{"id":5257,"name":"pyo3","ecosystem":"cargo","repository_url":"https://github.com/pyo3/pyo3","issues_count":1024,"created_at":"2025-06-06T17:11:54.159Z","updated_at":"2025-06-06T17:11:54.159Z","purl":"pkg:cargo/pyo3","metadata":{"id":4243776,"name":"pyo3","ecosystem":"cargo","description":"Bindings to Python interpreter","homepage":"https://github.com/pyo3/pyo3","licenses":"MIT OR Apache-2.0","normalized_licenses":["MIT","Apache-2.0"],"repository_url":"https://github.com/pyo3/pyo3","keywords_array":["ffi","python","cpython","pyo3"],"namespace":null,"versions_count":103,"first_release_published_at":"2017-07-23T18:28:44.917Z","latest_release_published_at":"2025-05-14T11:37:38.809Z","latest_release_number":"0.25.0","last_synced_at":"2025-06-06T01:00:45.103Z","created_at":"2022-04-12T23:38:03.042Z","updated_at":"2025-06-06T01:00:45.103Z","registry_url":"https://crates.io/crates/pyo3/","install_command":"cargo install pyo3","documentation_url":"https://docs.rs/pyo3/","metadata":{"categories":["development-tools::ffi","api-bindings"]},"repo_metadata":{"id":37303330,"uuid":"91151442","full_name":"PyO3/pyo3","owner":"PyO3","description":"Rust bindings for the Python interpreter","archived":false,"fork":false,"pushed_at":"2024-10-26T20:02:14.000Z","size":37970,"stargazers_count":12216,"open_issues_count":260,"forks_count":754,"subscribers_count":99,"default_branch":"main","last_synced_at":"2024-10-27T19:57:47.831Z","etag":null,"topics":["binding","ffi","python","python-c-api","rust"],"latest_commit_sha":null,"homepage":"https://pyo3.rs","language":"Rust","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/PyO3.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"Contributing.md","funding":null,"license":"LICENSE-APACHE","code_of_conduct":"Code-of-Conduct.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-05-13T05:22:06.000Z","updated_at":"2024-10-27T17:50:38.000Z","dependencies_parsed_at":"2023-10-25T10:29:44.288Z","dependency_job_id":"b5e0c863-994b-4624-a0cc-a3468272888f","html_url":"https://github.com/PyO3/pyo3","commit_stats":{"total_commits":4627,"total_committers":394,"mean_commits":"11.743654822335026","dds":0.7996542035876377,"last_synced_commit":"6aa5e6b334a6fd2075c0f7c93fa2bfdb6bd4aa18"},"previous_names":[],"tags_count":92,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PyO3","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221901599,"owners_count":16899058,"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":"PyO3","name":"PyO3","uuid":"28156855","kind":"organization","description":"Pythonium Trioxide","email":null,"website":"https://pyo3.rs","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/28156855?v=4","repositories_count":13,"last_synced_at":"2024-03-25T20:28:33.047Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/PyO3","funding_links":[],"total_stars":15545,"followers":292,"following":0,"created_at":"2022-11-02T16:33:21.713Z","updated_at":"2024-03-25T20:28:43.735Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PyO3","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PyO3/repositories"},"tags":[{"name":"v0.22.5","sha":"4c88e9afe8ece2b50af7e0dc0d7650c838f444ac","kind":"commit","published_at":"2024-10-15T20:56:38.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.22.5","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.22.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.5/manifests"},{"name":"v0.22.4","sha":"dff972320287043777fd77063175d23879fef90f","kind":"commit","published_at":"2024-10-12T06:14:55.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.22.4","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.22.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.4/manifests"},{"name":"v0.22.3","sha":"cd5369c1a0d264db5db030bb099aaafccee28598","kind":"commit","published_at":"2024-09-15T20:39:09.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.22.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.22.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.3/manifests"},{"name":"v0.22.2","sha":"92b0f1579776952ceaa67e0423d3f94f69faccfe","kind":"commit","published_at":"2024-07-17T21:27:43.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.22.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.22.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.2/manifests"},{"name":"v0.22.1","sha":"59c4fa3f249aa19eb9cb80fe418298c8267c00b2","kind":"commit","published_at":"2024-07-06T22:00:28.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.22.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.22.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.1/manifests"},{"name":"v0.22.0","sha":"2e2d4404a682ce87e0b0fe254816457872acf5b2","kind":"commit","published_at":"2024-06-24T19:06:42.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.22.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.22.0/manifests"},{"name":"v0.21.2","sha":"a646a820fd3fc6211c52291de8b23a61f7ae7c22","kind":"commit","published_at":"2024-04-16T07:57:37.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.21.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.21.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.21.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.21.2/manifests"},{"name":"v0.21.1","sha":"4168d0585accd94d13ffe6480c540c721de4d3e4","kind":"commit","published_at":"2024-04-01T17:46:48.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.21.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.21.1/manifests"},{"name":"v0.21.0","sha":"d854ea05461da540541c670678db4be991b6c721","kind":"commit","published_at":"2024-03-25T19:53:14.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.21.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.21.0/manifests"},{"name":"v0.21.0-beta.0","sha":"adc059fe1dfada4d23bb1180fb1d85cdbf2491f1","kind":"commit","published_at":"2024-03-10T21:38:04.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.21.0-beta.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.21.0-beta.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.21.0-beta.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.21.0-beta.0/manifests"},{"name":"v0.20.3","sha":"901f54ba1fff1da69c3e2b346147b7022ee53ddc","kind":"commit","published_at":"2024-02-23T09:31:06.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.20.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.20.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.20.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.20.3/manifests"},{"name":"v0.20.2","sha":"bcef18b988a519aca93c29039fa0894a310d2eaf","kind":"commit","published_at":"2024-01-03T13:20:28.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.20.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.20.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.20.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.20.2/manifests"},{"name":"v0.20.1","sha":"d3f034a80f2973e4d21fc2fd49cd0af309f1ab4d","kind":"commit","published_at":"2023-12-30T21:20:06.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.20.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.20.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.20.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.20.1/manifests"},{"name":"v0.20.0","sha":"c77deee18ec545b3b5fa480068e5da62a33e7c42","kind":"commit","published_at":"2023-10-11T12:39:19.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.20.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.20.0/manifests"},{"name":"v0.19.2","sha":"931e23dde6080602acaca00d5ca5884c6109efd3","kind":"commit","published_at":"2023-07-30T17:01:06.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.19.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.19.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.19.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.19.2/manifests"},{"name":"v0.19.1","sha":"dfe04e9b316a54c860539bda235972ebcf24a54d","kind":"commit","published_at":"2023-07-03T14:23:52.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.19.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.19.1/manifests"},{"name":"v0.19.0","sha":"2500e22e13642f5bf91d4696d8a8d9e2ae075344","kind":"commit","published_at":"2023-05-31T12:53:37.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.19.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.19.0/manifests"},{"name":"v0.18.3","sha":"5cdc1337c8dfbd9497e3b1caee4ec25542b9b66b","kind":"commit","published_at":"2023-04-11T18:12:16.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.18.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.18.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.18.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.18.3/manifests"},{"name":"v0.18.2","sha":"13779d2b365ad9b2a65b7b09e2c78b467c8a2757","kind":"commit","published_at":"2023-03-23T19:09:50.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.18.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.18.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.18.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.18.2/manifests"},{"name":"v0.18.1","sha":"37d377ea6cf5ba3999998f75046964023bd13845","kind":"commit","published_at":"2023-02-07T18:28:45.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.18.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.18.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.18.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.18.1/manifests"},{"name":"v0.18.0","sha":"224a4160b440a8f2577aa8eefa6a98886fc6b86f","kind":"commit","published_at":"2023-01-17T19:04:30.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.18.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.18.0/manifests"},{"name":"v0.17.3","sha":"a3edbf4fcd595f0e234c87d4705eb600a9779130","kind":"commit","published_at":"2022-11-01T18:18:40.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.17.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.17.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.17.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.17.3/manifests"},{"name":"v0.17.2","sha":"067f5643f285c0846b4abf70bbbc82f5b9d8a9c8","kind":"commit","published_at":"2022-10-03T20:33:52.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.17.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.17.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.17.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.17.2/manifests"},{"name":"v0.17.1","sha":"caaf7bbda74f873297d277733c157338f5492580","kind":"commit","published_at":"2022-08-28T07:27:56.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.17.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.17.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.17.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.17.1/manifests"},{"name":"v0.17.0","sha":"04c1ac87f15048197daa361afaf02341018354d6","kind":"commit","published_at":"2022-08-23T20:21:19.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.17.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.17.0/manifests"},{"name":"v0.16.6","sha":"4fdebfc630b7c956b05c0e03b21e36bb7f79f72a","kind":"commit","published_at":"2022-08-23T07:05:36.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.16.6","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.16.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.6/manifests"},{"name":"v0.16.5","sha":"456a96d6eb3371b0a78aa317c5f04c00ab41f903","kind":"commit","published_at":"2022-05-15T17:16:38.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.16.5","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.16.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.5/manifests"},{"name":"v0.16.4","sha":"d2caa056e9aacc46374139ef491d112cb8af1a25","kind":"commit","published_at":"2022-04-14T06:56:42.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.16.4","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.16.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.4/manifests"},{"name":"v0.15.2","sha":"6cd6da5d48ba4b4cd6b1812f1ecebc7f3f36bdb4","kind":"commit","published_at":"2022-04-14T06:27:04.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.15.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.15.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.15.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.15.2/manifests"},{"name":"v0.16.3","sha":"1ae0971a09642522b3074af9016d54d415651da5","kind":"commit","published_at":"2022-04-05T03:05:57.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.16.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.16.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.3/manifests"},{"name":"v0.16.2","sha":"922bbfc92da63d37b24946afdb651d9ae2a0ee47","kind":"commit","published_at":"2022-03-15T18:20:00.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.16.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.16.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.2/manifests"},{"name":"v0.16.1","sha":"7056bae21f0271ec74117576779ff5d811f55158","kind":"commit","published_at":"2022-03-05T16:21:44.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.16.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.16.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.1/manifests"},{"name":"v0.16.0","sha":"4c434a21bd75e03368f7f114754dd8f31ecd2ead","kind":"commit","published_at":"2022-02-27T20:28:51.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.16.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.16.0/manifests"},{"name":"v0.15.1","sha":"eb5059acc7312bd03b793b2423d32b9d3b5dcc2e","kind":"commit","published_at":"2021-11-18T07:34:22.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.15.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.15.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.15.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.15.1/manifests"},{"name":"v0.15.0","sha":"47747444c76c9fc6bdd7800c55f3d6dad28a3c9b","kind":"commit","published_at":"2021-11-03T23:00:38.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.15.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.15.0/manifests"},{"name":"v0.14.5","sha":"f1bb6883b9ccaeb9755abd2fbd63871d2827df6b","kind":"commit","published_at":"2021-09-03T07:13:03.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.14.5","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.14.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.5/manifests"},{"name":"v0.14.4","sha":"d544c07bbca5e63bd0e719684520dc116015aad7","kind":"commit","published_at":"2021-08-28T09:26:46.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.14.4","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.14.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.4/manifests"},{"name":"v0.14.3","sha":"5e53c4d0cf2b87337d72314bc6bde3132f3a5fbf","kind":"commit","published_at":"2021-08-21T23:03:58.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.14.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.14.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.3/manifests"},{"name":"v0.14.2","sha":"1873264b7d10edfa44db386641b10d372ccef5e9","kind":"commit","published_at":"2021-08-09T06:58:31.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.14.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"3f8c4ad38e2cc7aa2e4d4f146165838360d8de75","kind":"commit","published_at":"2021-07-04T15:49:36.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.14.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"adf6bdba8eb92f3aa95486f362abbf3b789ef962","kind":"commit","published_at":"2021-07-03T07:37:00.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.14.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.14.0/manifests"},{"name":"v0.13.2","sha":"190eb728037772210bc2805432d77854703cdb42","kind":"commit","published_at":"2021-02-12T21:34:29.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.13.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.13.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.13.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.13.2/manifests"},{"name":"v0.13.1","sha":"d2e87d95f395bb7730b4227de063a72d5214434e","kind":"commit","published_at":"2021-01-10T12:20:10.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.13.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"26ca1f5bcaf833c254bcf69c6f275cc13df08dc0","kind":"commit","published_at":"2020-12-22T15:42:04.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.13.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.13.0/manifests"},{"name":"v0.12.4","sha":"0fdd09afda0c60562ced9df8734778de8555eb10","kind":"commit","published_at":"2020-11-28T20:04:55.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.12.4","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.12.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.12.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.12.4/manifests"},{"name":"v0.12.3","sha":"38af32e33ef9878217384bebab7e9df25233c4e5","kind":"commit","published_at":"2020-10-12T15:18:25.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.12.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.12.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.12.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.12.3/manifests"},{"name":"v0.12.2","sha":"1cecad884a2a8f4f4c981ab2d85659d8cd9efaa4","kind":"commit","published_at":"2020-10-12T11:56:46.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.12.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.12.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.12.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.12.2/manifests"},{"name":"v0.12.1","sha":"c05815520cc58db2a3fb2f79b3379ac043676e11","kind":"commit","published_at":"2020-09-16T20:45:36.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.12.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"32be8d9a3c463fbc3689b57680d73953355b36e0","kind":"commit","published_at":"2020-09-12T13:13:45.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.12.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.12.0/manifests"},{"name":"v0.11.1","sha":"c6abf24cca6a74a59d9a88715944f56313e1de21","kind":"commit","published_at":"2020-06-30T08:31:24.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.11.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.11.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.11.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.11.1/manifests"},{"name":"v0.11.0","sha":"6335a7f1b50703eb826582ee5347dc201ecb80cd","kind":"commit","published_at":"2020-06-28T08:18:53.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.11.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.11.0/manifests"},{"name":"v0.10.1","sha":"45cb26d2f04820882df93cae17e70ac0da146541","kind":"commit","published_at":"2020-05-14T12:35:42.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.10.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.10.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.10.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.10.1/manifests"},{"name":"v0.10.0","sha":"7e4d1c41e3eebe757931f45e0bf2b3032cdc5eb1","kind":"commit","published_at":"2020-05-13T04:24:36.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.10.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.10.0/manifests"},{"name":"v0.9.2","sha":"956d499f5d76237ae0a97105eb19901e55f9c3e6","kind":"commit","published_at":"2020-04-09T04:01:53.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.9.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.9.2/manifests"},{"name":"v0.9.1","sha":"1c1d3c4dd9ed6f1a0c5e072db7c659eb62c627b9","kind":"commit","published_at":"2020-03-23T13:26:31.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.9.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.9.1/manifests"},{"name":"v0.9.0","sha":"d43a34986d500f9efb43b4b2cf87cee893d6b946","kind":"commit","published_at":"2020-03-19T06:10:45.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.9.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.9.0/manifests"},{"name":"v0.9.0-alpha.1","sha":"d2174c2eadab7879255a6be51046eff83e22e646","kind":"commit","published_at":"2020-01-17T12:49:55.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.9.0-alpha.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.9.0-alpha.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.9.0-alpha.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.9.0-alpha.1/manifests"},{"name":"v0.8.5","sha":"7e591e310cfde03ad58900084993287cb0a18817","kind":"commit","published_at":"2020-01-05T09:57:41.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.8.5","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.8.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.5/manifests"},{"name":"v0.8.4","sha":"4aa2ff5e0acb9c31fe8b8892804eb61670316798","kind":"commit","published_at":"2019-12-14T13:29:34.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.8.4","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.8.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.4/manifests"},{"name":"v0.8.3","sha":"42ee18011683cab5109b81ca0ee49bf1cbabc393","kind":"commit","published_at":"2019-11-23T11:08:48.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.8.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.8.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.3/manifests"},{"name":"v0.8.2","sha":"fe229753fb6028a6c9418f020d8aab76b3693aae","kind":"commit","published_at":"2019-10-27T06:10:41.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.8.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.8.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.2/manifests"},{"name":"v0.8.1","sha":"89b7c7e3090e31625c282d7a5546dd61008ed1a2","kind":"commit","published_at":"2019-10-08T02:50:31.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.8.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.1/manifests"},{"name":"v0.8.0","sha":"88b0a03dcd247c98129d9c4471169462eb88564e","kind":"tag","published_at":"2019-09-05T13:13:55.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.8.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.8.0/manifests"},{"name":"v0.7.0","sha":"ed52d57c6f349c360c90aaf53809bb6fb9f9fe81","kind":"commit","published_at":"2019-05-26T09:05:31.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.7.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.7.0/manifests"},{"name":"v0.7.0-alpha.1","sha":"7149a1fecb397f2e267c9cc42282f492e7332fac","kind":"tag","published_at":"2019-04-23T16:59:18.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.7.0-alpha.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.7.0-alpha.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.7.0-alpha.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.7.0-alpha.1/manifests"},{"name":"v0.6.0","sha":"8acc5289cca7c5214a2c75cf3e38ee4b9bc8a6e0","kind":"tag","published_at":"2019-03-28T11:56:12.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.6.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.6.0/manifests"},{"name":"pyo3-derive-backend-0.6.0","sha":"3f27647b1b9eb22da6f9cc0c8b2f0307001140bd","kind":"tag","published_at":"2019-03-28T11:52:33.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/pyo3-derive-backend-0.6.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/pyo3-derive-backend-0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/pyo3-derive-backend-0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/pyo3-derive-backend-0.6.0/manifests"},{"name":"v0.6.0-alpha.4","sha":"0cd72ac213c66b135a6f03dfea14d5a3235ad95f","kind":"tag","published_at":"2019-02-20T10:30:42.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.6.0-alpha.4","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.6.0-alpha.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.6.0-alpha.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.6.0-alpha.4/manifests"},{"name":"v0.6.0-alpha.3","sha":"61e449b10e4a864e0ceff525a489adf09f859a9a","kind":"tag","published_at":"2019-02-19T21:30:43.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.6.0-alpha.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.6.0-alpha.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.6.0-alpha.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.6.0-alpha.3/manifests"},{"name":"v0.5.4","sha":"c1ad3b1e488156eb9575201c6c6915531ba996b3","kind":"tag","published_at":"2019-02-18T19:54:51.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.5.4","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.5.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.4/manifests"},{"name":"v0.6.0-alpha.2","sha":"f9468888043736547b15dffa37704c0723b8e5c8","kind":"tag","published_at":"2019-02-01T16:58:08.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.6.0-alpha.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.6.0-alpha.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.6.0-alpha.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.6.0-alpha.2/manifests"},{"name":"v0.6.0-alpha.1","sha":"0deaee01ad9d538b9865a578840a4bc18b32c3da","kind":"tag","published_at":"2019-01-04T11:08:11.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.6.0-alpha.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.6.0-alpha.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.6.0-alpha.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.6.0-alpha.1/manifests"},{"name":"v0.5.3","sha":"6d0846949234d332b9e0a8c8258f7de178a66ec7","kind":"tag","published_at":"2019-01-04T10:31:34.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.5.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.3/manifests"},{"name":"v0.5.2","sha":"4c1a81789223f0af3632b4dacab84c92931c4ce7","kind":"tag","published_at":"2018-11-25T23:14:37.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.5.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.2/manifests"},{"name":"v0.5.1","sha":"c48faa94fedac72ffa114fafaee3b0c4eadf8440","kind":"tag","published_at":"2018-11-24T12:14:15.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.5.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.1/manifests"},{"name":"v0.5.0","sha":"9f45efebaf4f1b886553585da3794c0ef90f1eb7","kind":"tag","published_at":"2018-11-11T11:28:04.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.5.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.0/manifests"},{"name":"v0.5.0-alpha.3","sha":"234e2c69982ea9a1848b0fb5aada82405968e679","kind":"tag","published_at":"2018-11-02T15:35:00.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.5.0-alpha.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.5.0-alpha.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.0-alpha.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.0-alpha.3/manifests"},{"name":"v0.5.0-alpha.2","sha":"3b63cc91786183882db83706d4305d6cdb9217e9","kind":"tag","published_at":"2018-10-29T16:45:16.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.5.0-alpha.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.5.0-alpha.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.0-alpha.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.5.0-alpha.2/manifests"},{"name":"v0.4.1","sha":"9cadbd11def75bf61f964bd8084b8882ddb5fb1e","kind":"tag","published_at":"2018-08-20T12:36:53.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.4.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"b7dc0ad69512bb273159b0237f778f8452b98fb2","kind":"tag","published_at":"2018-07-30T21:11:07.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.4.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.4.0/manifests"},{"name":"v0.3.2","sha":"2627fa8a083616c031a3161a7517018de6149892","kind":"tag","published_at":"2018-07-22T19:38:45.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.3.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.3.2/manifests"},{"name":"v0.3.1","sha":"7d4381fc5d5e58b454ab92b50685fd4595152bcf","kind":"tag","published_at":"2018-07-18T12:06:32.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.3.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"d59bebcc389c5c3c7fb82f05fe2392ba848a0298","kind":"tag","published_at":"2018-07-18T11:27:53.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.3.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.3.0/manifests"},{"name":"v0.2.7","sha":"cd1f3d17bf87c4fec91c10ac39f5f8aee5959c09","kind":"tag","published_at":"2018-05-17T23:48:48.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.2.7","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.2.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.2.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.2.7/manifests"},{"name":"v0.2.6","sha":"14ab12b89f813e60ecf593e1ba80c917dd121f73","kind":"commit","published_at":"2018-04-03T17:32:10.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.2.6","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.2.6/manifests"},{"name":"v0.2.5","sha":"d00abc1fa72157256810cb156599a21e768b152a","kind":"commit","published_at":"2018-02-21T18:43:52.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.2.5","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.2.5/manifests"},{"name":"v0.2.4","sha":"c39a1d7e945e6bde30431394295e262374822e51","kind":"commit","published_at":"2018-01-19T18:10:32.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.2.4","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.2.4/manifests"},{"name":"v0.2.3","sha":"3cb57f557939314184c79a7164b10c052991f123","kind":"commit","published_at":"2017-11-27T19:40:03.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/v0.2.3","html_url":"https://github.com/PyO3/pyo3/releases/tag/v0.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/v0.2.3/manifests"},{"name":"0.2.2","sha":"25e2080a767694aff132720d61b737d03d06912d","kind":"commit","published_at":"2017-10-01T12:59:26.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/0.2.2","html_url":"https://github.com/PyO3/pyo3/releases/tag/0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/0.2.2/manifests"},{"name":"0.2.1","sha":"826544d7068e2cad076774e0c584c14e142d2f62","kind":"commit","published_at":"2017-09-27T04:20:18.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/0.2.1","html_url":"https://github.com/PyO3/pyo3/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"e186b5d2b6ee66d902006ca65499aee83f216923","kind":"commit","published_at":"2017-08-12T16:53:15.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/0.2.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"01ab0f828a879b3256dc4a32e82fa154ede12746","kind":"commit","published_at":"2017-07-23T18:24:39.000Z","download_url":"https://codeload.github.com/PyO3/pyo3/tar.gz/0.1.0","html_url":"https://github.com/PyO3/pyo3/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyO3%2Fpyo3/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2024-10-29T16:22:58.875Z","dependent_packages_count":666,"downloads":81241315,"downloads_period":"total","dependent_repos_count":2349,"rankings":{"downloads":0.3540272361192409,"dependent_repos_count":0.8060819340324549,"dependent_packages_count":0.1269420368555047,"stargazers_count":1.0472718040579139,"forks_count":1.4365607170814614,"docker_downloads_count":0.4379500271514912,"average":0.7014722925496778},"purl":"pkg:cargo/pyo3","advisories":[{"uuid":"GSA_kwCzR0hTQS1mOHg0LWYzMnItdzU1Ns4ABARR","url":"https://github.com/advisories/GHSA-f8x4-f32r-w556","title":"Duplicate Advisory: PyO3 has a risk of use-after-free in `borrowed` reads from Python weak references","description":"## Duplicate Advisory\n\nThis advisory has been withdrawn because it is a duplicate of GHSA-6jgw-rgmm-7cv6. This link is maintained to preserve external references.\n\n## Original Advisory\n\nThe family of functions to read \"borrowed\" values from Python weak references were fundamentally unsound, because the weak reference does itself not have ownership of the value. At any point the last strong reference could be cleared and the borrowed value would become dangling.\n\nIn PyO3 0.22.4 these functions have all been deprecated and patched to leak a strong reference as a mitigation. PyO3 0.23 will remove these functions entirely.\n\n","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2024-10-15T14:08:25.000Z","withdrawn_at":"2024-10-15T17:13:46.000Z","classification":"GENERAL","cvss_score":4.8,"cvss_vector":"CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N","references":["https://github.com/PyO3/pyo3/pull/4590","https://rustsec.org/advisories/RUSTSEC-2024-0378.html","https://github.com/advisories/GHSA-f8x4-f32r-w556"],"source_kind":"github","identifiers":["GHSA-f8x4-f32r-w556"],"repository_url":"https://github.com/PyO3/pyo3","blast_radius":16.18023848053251,"packages":[{"versions":[{"first_patched_version":"0.22.4","vulnerable_version_range":"\u003e= 0.22.0, \u003c 0.22.4"}],"ecosystem":"cargo","package_name":"pyo3"}],"created_at":"2024-10-15T15:06:43.085Z","updated_at":"2024-10-15T17:13:46.000Z","epss_percentage":null,"epss_percentile":null},{"uuid":"GSA_kwCzR0hTQS02amd3LXJnbW0tN2N2Ns4ABARX","url":"https://github.com/advisories/GHSA-6jgw-rgmm-7cv6","title":" PyO3 has a risk of use-after-free in `borrowed` reads from Python weak references","description":"The family of functions to read \"borrowed\" values from Python weak references were fundamentally unsound, because the weak reference does itself not have ownership of the value. At any point the last strong reference could be cleared and the borrowed value would become dangling.\n\nIn PyO3 0.22.4 these functions have all been deprecated and patched to leak a strong reference as a mitigation. PyO3 0.23 will remove these functions entirely.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2024-10-15T15:30:56.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":4.8,"cvss_vector":"CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N","references":["https://nvd.nist.gov/vuln/detail/CVE-2024-9979","https://github.com/PyO3/pyo3/pull/4590","https://access.redhat.com/security/cve/CVE-2024-9979","https://bugzilla.redhat.com/show_bug.cgi?id=2318646","https://crates.io/crates/pyo3","https://rustsec.org/advisories/RUSTSEC-2024-0378.html","https://github.com/advisories/GHSA-6jgw-rgmm-7cv6"],"source_kind":"github","identifiers":["GHSA-6jgw-rgmm-7cv6","CVE-2024-9979"],"repository_url":"https://github.com/PyO3/pyo3","blast_radius":16.18023848053251,"packages":[{"versions":[{"first_patched_version":"0.22.4","vulnerable_version_range":"\u003e= 0.22.0, \u003c 0.22.4"}],"ecosystem":"cargo","package_name":"pyo3"}],"created_at":"2024-10-15T18:06:38.024Z","updated_at":"2025-04-24T01:08:38.576Z","epss_percentage":0.00064,"epss_percentile":0.205},{"uuid":"MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLTJ2eDYtZmN3Ni1ocHI2","url":"https://github.com/advisories/GHSA-2vx6-fcw6-hpr6","title":"Reference counting error in pyo3","description":"An issue was discovered in the pyo3 crate before 0.12.4 for Rust. There is a reference-counting error and use-after-free in From\u003cPy\u003cT\u003e\u003e.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2021-08-25T20:49:52.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":0.0,"cvss_vector":null,"references":["https://nvd.nist.gov/vuln/detail/CVE-2020-35917","https://github.com/PyO3/pyo3/pull/1297","https://rustsec.org/advisories/RUSTSEC-2020-0074.html","https://github.com/PyO3/pyo3/commit/8f81f595dd770b586c7ca7195b42004a6c976eb9","https://github.com/advisories/GHSA-2vx6-fcw6-hpr6"],"source_kind":"github","identifiers":["GHSA-2vx6-fcw6-hpr6","CVE-2020-35917"],"repository_url":"https://github.com/PyO3/pyo3","blast_radius":0.0,"packages":[{"versions":[{"first_patched_version":"0.12.4","vulnerable_version_range":"\u003e= 0.12.0, \u003c 0.12.4"}],"ecosystem":"cargo","package_name":"pyo3"}],"created_at":"2022-12-21T16:12:55.335Z","updated_at":"2023-09-18T20:33:15.000Z","epss_percentage":0.00063,"epss_percentile":0.19892},{"uuid":"GSA_kwCzR0hTQS1wcGg4LWdjdjctNHFqNc4ABGUy","url":"https://github.com/advisories/GHSA-pph8-gcv7-4qj5","title":"PyO3 Risk of buffer overflow in `PyString::from_object`","description":"`PyString::from_object` took `\u0026str` arguments and forwarded them directly to the Python C API without checking for terminating nul bytes. This could lead the Python interpreter to read beyond the end of the `\u0026str` data and potentially leak contents of the out-of-bounds read (by raising a Python exception containing a copy of the data including the overflow).\n\nIn PyO3 0.24.1 this function will now allocate a `CString` to guarantee a terminating nul bytes. PyO3 0.25 will likely offer an alternative API which takes `\u0026CStr` arguments.","origin":"UNSPECIFIED","severity":"LOW","published_at":"2025-04-02T13:19:19.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":2.9,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:P","references":["https://github.com/PyO3/pyo3/issues/5005","https://github.com/PyO3/pyo3/pull/5008","https://rustsec.org/advisories/RUSTSEC-2025-0020.html","https://github.com/advisories/GHSA-pph8-gcv7-4qj5"],"source_kind":"github","identifiers":["GHSA-pph8-gcv7-4qj5"],"repository_url":"https://github.com/PyO3/pyo3","blast_radius":9.775560748655057,"packages":[{"versions":[{"first_patched_version":"0.24.1","vulnerable_version_range":"\u003e= 0.1.0, \u003c 0.24.1"}],"ecosystem":"cargo","package_name":"pyo3"}],"created_at":"2025-04-02T14:08:57.595Z","updated_at":"2025-04-02T13:19:20.000Z","epss_percentage":null,"epss_percentile":null},{"uuid":"GSA_kwCzR0hTQS12eGNmLWM3bXgtcGc1M84ABCFh","url":"https://github.com/advisories/GHSA-vxcf-c7mx-pg53","title":"Build corruption when using `PYO3_CONFIG_FILE` environment variable","description":"In PyO3 0.23.0 the `PYO3_CONFIG_FILE` environment variable used to configure builds regressed such that changing the environment variable would no longer trigger PyO3 to reconfigure and recompile. In combination with workflows using tools such as `maturin` to build for multiple versions in a single build, this leads to Python wheels being compiled against the wrong Python API version.\n\nAll users who distribute artefacts for multiple Python versions are encouraged to update and rebuild with PyO3 0.23.3. Affected wheels produced from PyO3 0.23.0 through 0.23.2 are highly unstable and will crash the Python interpreter in unpredictable ways.\n","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2024-12-05T19:06:20.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":0.0,"cvss_vector":null,"references":["https://github.com/PyO3/pyo3/issues/4757","https://rustsec.org/advisories/RUSTSEC-2024-0409.html","https://github.com/advisories/GHSA-vxcf-c7mx-pg53"],"source_kind":"github","identifiers":["GHSA-vxcf-c7mx-pg53"],"repository_url":"https://github.com/PyO3/pyo3","blast_radius":0.0,"packages":[{"versions":[{"first_patched_version":"0.23.3","vulnerable_version_range":"\u003e= 0.23.0, \u003c 0.23.3"}],"ecosystem":"cargo","package_name":"pyo3"}],"created_at":"2024-12-05T20:09:40.868Z","updated_at":"2024-12-05T19:06:21.000Z","epss_percentage":null,"epss_percentile":null}],"docker_usage_url":"https://docker.ecosyste.ms/usage/cargo/pyo3","docker_dependents_count":159,"docker_downloads_count":23463016,"usage_url":"https://repos.ecosyste.ms/usage/cargo/pyo3","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/cargo/pyo3/dependencies","status":null,"funding_links":[],"critical":true,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/crates.io/packages/pyo3/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/crates.io/packages/pyo3/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/crates.io/packages/pyo3/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/crates.io/packages/pyo3/related_packages","maintainers":[{"uuid":"7201","login":"fafhrd91","name":"Nikolay Kim","email":null,"url":"https://github.com/fafhrd91","packages_count":78,"html_url":"https://crates.io/users/fafhrd91","role":null,"created_at":"2022-11-07T23:26:59.928Z","updated_at":"2022-11-07T23:26:59.928Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/crates.io/maintainers/fafhrd91/packages"}],"registry":{"name":"crates.io","url":"https://crates.io","ecosystem":"cargo","default":true,"packages_count":192306,"maintainers_count":47545,"namespaces_count":0,"keywords_count":49253,"github":"rust-lang","metadata":{"funded_packages_count":18707},"icon_url":"https://github.com/rust-lang.png","created_at":"2022-04-04T15:19:22.689Z","updated_at":"2025-06-05T05:11:10.324Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/crates.io/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/crates.io/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/crates.io/namespaces"}},"unique_repositories_count":514,"unique_repositories_count_past_30_days":24,"recent_issues":[{"uuid":"5787064723","node_id":"PR_kwDOQChdoc8AAAABHpIvRw","number":201,"state":"open","title":"Build(deps): bump pyo3 from 0.28.3 to 0.29.3","user":"dependabot[bot]","labels":["dependencies","cargo"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-10T01:59:28.000Z","updated_at":"2026-10-10T02:00:11.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build(deps)","packages":[{"name":"pyo3","old_version":"0.28.3","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.28.3 to 0.29.3.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.29.2\u003c/h2\u003e\n\u003cp\u003eThis patch fixes a regression in PyO3 0.29.1 which broke PyPy 3.11 compatibility (\u003ccode\u003e#[pyclass]\u003c/code\u003e types would crash PyPy on instance deletion).\u003c/p\u003e\n\u003cp\u003eA few further fixes have also landed with similar themes to PyO3 0.29.1: fixes to minor reference counting bugs, rough edges which would cause crashes, issues which would cause failed builds, and fixes to \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation.\u003c/p\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/ImFeH2\"\u003e\u003ccode\u003e@​ImFeH2\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Tpt\"\u003e\u003ccode\u003e@​Tpt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/WaterWhisperer\"\u003e\u003ccode\u003e@​WaterWhisperer\u003c/code\u003e\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.29.2] - 2026-08-05\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePYO3_USE_RAW_DYLIB=0\u003c/code\u003e opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6185\"\u003e#6185\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.28.3...v0.29.3\"\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=pyo3\u0026package-manager=cargo\u0026previous-version=0.28.3\u0026new-version=0.29.3)](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 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/leynos/tei-rapporteur/pull/201","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/leynos%2Ftei-rapporteur/issues/201","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/201/packages"},{"uuid":"5778096389","node_id":"PR_kwDOTxc1Nc8AAAABHiB2hQ","number":3203,"state":"closed","title":"chore(deps): bump pyo3 from 0.29.2 to 0.29.3 in /eqats_rust_core","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2026-10-09T12:29:35.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-09T12:28:47.000Z","updated_at":"2026-10-09T12:29:38.000Z","time_to_close":48,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":"/eqats_rust_core","ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.29.2 to 0.29.3.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\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=pyo3\u0026package-manager=cargo\u0026previous-version=0.29.2\u0026new-version=0.29.3)](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 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/sparlit/EQATS/pull/3203","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sparlit%2FEQATS/issues/3203","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3203/packages"},{"uuid":"5758984681","node_id":"PR_kwDORA3pOM8AAAABHSwZaw","number":93,"state":"closed","title":"build(deps): bump the rust-dependencies group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-10-08T09:28:06.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-08T09:03:25.000Z","updated_at":"2026-10-08T09:28:15.000Z","time_to_close":1481,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"rust-dependencies","update_count":2,"packages":[{"name":"thiserror","old_version":"2.0.20","new_version":"2.0.21","repository_url":"https://github.com/dtolnay/thiserror"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the rust-dependencies group with 2 updates in the /rust directory: [thiserror](https://github.com/dtolnay/thiserror) and [pyo3](https://github.com/pyo3/pyo3).\n\nUpdates `thiserror` from 2.0.20 to 2.0.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/thiserror/releases\"\u003ethiserror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix parsing of generic unit variants in display expressions (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\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/dtolnay/thiserror/commit/b1827ee06f81a7d7f954e676771e19a97f9f8e3b\"\u003e\u003ccode\u003eb1827ee\u003c/code\u003e\u003c/a\u003e Release 2.0.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/58037b575a2a5543d0d54a49360554325b49f55a\"\u003e\u003ccode\u003e58037b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e from dtolnay/turbofish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/f82a0cf8f06c71263c2caa26e759f337d2778153\"\u003e\u003ccode\u003ef82a0cf\u003c/code\u003e\u003c/a\u003e Keep track of nested turbofish depth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72ea49262d6412ccbc08f1696dda8626409e657d\"\u003e\u003ccode\u003e72ea492\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72eea0d4ddb17ff9fa873aa74469de850021b22e\"\u003e\u003ccode\u003e72eea0d\u003c/code\u003e\u003c/a\u003e Resolve io_other_error clippy lint in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/07f09a2ec934df58508ce4fa5e7fbf27cca552c2\"\u003e\u003ccode\u003e07f09a2\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.74\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/2715388e8cc5787b3643251f7a7a637e89376688\"\u003e\u003ccode\u003e2715388\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/5a306c7d0a8588caaaaa6a7567aeb25c1c10719b\"\u003e\u003ccode\u003e5a306c7\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/ef9383b37d7c96b01e10df35d3e9e313c7b98b5a\"\u003e\u003ccode\u003eef9383b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-08-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/8336b8407fbfe69177c504cdbc379db20cf6f131\"\u003e\u003ccode\u003e8336b84\u003c/code\u003e\u003c/a\u003e Update ui tests for version 2.0.20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dtolnay/thiserror/compare/2.0.20...2.0.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/bigbio/mokume/pull/93","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigbio%2Fmokume/issues/93","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/93/packages"},{"uuid":"5756760235","node_id":"PR_kwDONFDlCM8AAAABHQ-RCg","number":617,"state":"open","title":"Bump the version-updates group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":["olegasics","minev-dev","andagaev"],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-08T06:00:35.000Z","updated_at":"2026-10-08T06:06:39.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"version-updates","update_count":2,"packages":[{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"tokio","old_version":"1.53.1","new_version":"1.53.2","repository_url":"https://github.com/tokio-rs/tokio"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the version-updates group with 2 updates in the / directory: [pyo3](https://github.com/pyo3/pyo3) and [tokio](https://github.com/tokio-rs/tokio).\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokio` from 1.53.1 to 1.53.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tokio-rs/tokio/releases\"\u003etokio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTokio v1.53.2\u003c/h2\u003e\n\u003ch1\u003e1.53.2 (October 3rd, 2026)\u003c/h1\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eio: revert \u0026quot;always cleanup \u003ccode\u003eAsyncFd\u003c/code\u003e registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eprocess: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix mpsc index wraparound in block reclamation (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: forget mpsc \u003ccode\u003ePermit\u003c/code\u003e before sending value (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: validate \u003ccode\u003eMAX_PERMITS\u003c/code\u003e in \u003ccode\u003eSemaphore::acquire\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: wake broadcast \u003ccode\u003eSender::closed\u003c/code\u003e outside mutex (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etask: drop replaced waker outside lock in \u003ccode\u003eJoinSet\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop timer lock before dropping waker in \u003ccode\u003eclear_entry\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: expire timers directly on shutdown without rotating wheel (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed (unstable)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: clamp \u003ccode\u003eio_uring\u003c/code\u003e read length to \u003ccode\u003eu32::MAX\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: ignore \u003ccode\u003ecurrent_thread\u003c/code\u003e task dumps from other runtimes (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: preserve \u003ccode\u003eio_uring\u003c/code\u003e context if a completion waker panics (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix semaphore use-after-free and permit leak on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etaskdump: restore deferred leaf wakes during capture (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop stored waker when cancelling alt timer entry (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8445\"\u003etokio-rs/tokio#8445\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8572\"\u003etokio-rs/tokio#8572\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8540\"\u003etokio-rs/tokio#8540\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8542\"\u003etokio-rs/tokio#8542\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8544\"\u003etokio-rs/tokio#8544\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8546\"\u003etokio-rs/tokio#8546\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8548\"\u003etokio-rs/tokio#8548\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8550\"\u003etokio-rs/tokio#8550\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8552\"\u003etokio-rs/tokio#8552\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8554\"\u003etokio-rs/tokio#8554\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8558\"\u003etokio-rs/tokio#8558\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8560\"\u003etokio-rs/tokio#8560\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8562\"\u003etokio-rs/tokio#8562\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8564\"\u003etokio-rs/tokio#8564\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8566\"\u003etokio-rs/tokio#8566\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8570\"\u003etokio-rs/tokio#8570\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8574\"\u003etokio-rs/tokio#8574\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ff0c4068a4ba5f3af0fe3c5657ba42879b6ea599\"\u003e\u003ccode\u003eff0c406\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.53.2 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8580\"\u003e#8580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/a762700e41bf027630ba4620cfd80d127b7c801d\"\u003e\u003ccode\u003ea762700\u003c/code\u003e\u003c/a\u003e Merge 'tokio-1.51.5' into 'tokio-1.53.x' (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8577\"\u003e#8577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ec31a9f62c9426cec415c8c79e0608dd2866bbf7\"\u003e\u003ccode\u003eec31a9f\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.51.5 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8579\"\u003e#8579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/625c85108da5ad0d482702a21d7d58a56ea06a48\"\u003e\u003ccode\u003e625c851\u003c/code\u003e\u003c/a\u003e sync: assign semaphore permits before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/832dd233293eaa59ba19cc6f5dc4753aab55ac13\"\u003e\u003ccode\u003e832dd23\u003c/code\u003e\u003c/a\u003e sync: avoid leaking semaphore permits on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/826954a2f3b6f595121c38875a5d81ca3e5f6cc6\"\u003e\u003ccode\u003e826954a\u003c/code\u003e\u003c/a\u003e sync: unlink semaphore waiter before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/9a479922501eb47102ab844fa40e4b28d1a3c250\"\u003e\u003ccode\u003e9a47992\u003c/code\u003e\u003c/a\u003e process: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/2fc5972b8bd6f51d1ad6df3bcc1a1927d1702663\"\u003e\u003ccode\u003e2fc5972\u003c/code\u003e\u003c/a\u003e fs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/85a6d13882e2ccf5c24131b282bab0214b0a493e\"\u003e\u003ccode\u003e85a6d13\u003c/code\u003e\u003c/a\u003e io: revert \u0026quot;always cleanup AsyncFd registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/436faa2da3970817653fef98c9abc6c8b4367f51\"\u003e\u003ccode\u003e436faa2\u003c/code\u003e\u003c/a\u003e rt: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tokio-rs/tokio/compare/tokio-1.53.1...tokio-1.53.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/opencloudtool/opencloudtool/pull/617","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencloudtool%2Fopencloudtool/issues/617","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/617/packages"},{"uuid":"5756406540","node_id":"PR_kwDOT-QI6c8AAAABHQsLig","number":20,"state":"open","title":"chore(deps): bump pyo3 from 0.29.2 to 0.29.3","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-08T05:24:13.000Z","updated_at":"2026-10-08T05:24:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.29.2 to 0.29.3.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\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=pyo3\u0026package-manager=cargo\u0026previous-version=0.29.2\u0026new-version=0.29.3)](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 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/yudaprama/office_oxide/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yudaprama%2Foffice_oxide/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"},{"uuid":"5736628113","node_id":"PR_kwDORpqulM8AAAABHA46MA","number":823,"state":"open","title":"chore(deps): bump the cargo-minor-patch group across 1 directory with 6 updates","user":"dependabot[bot]","labels":["dependencies","rust","release-notes:internal"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-06T23:11:16.000Z","updated_at":"2026-10-06T23:32:49.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"cargo-minor-patch","update_count":6,"packages":[{"name":"toml","old_version":"1.1.4+spec-1.1.0","new_version":"1.1.6+spec-1.1.0","repository_url":"https://github.com/toml-rs/toml"},{"name":"thiserror","old_version":"2.0.20","new_version":"2.0.21","repository_url":"https://github.com/dtolnay/thiserror"},{"name":"clap","old_version":"4.6.6","new_version":"4.6.7","repository_url":"https://github.com/clap-rs/clap"},{"name":"libc","old_version":"0.2.189","new_version":"0.2.190","repository_url":"https://github.com/rust-lang/libc"},{"name":"tokio","old_version":"1.53.1","new_version":"1.53.2","repository_url":"https://github.com/tokio-rs/tokio"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the cargo-minor-patch group with 6 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [toml](https://github.com/toml-rs/toml) | `1.1.4+spec-1.1.0` | `1.1.6+spec-1.1.0` |\n| [thiserror](https://github.com/dtolnay/thiserror) | `2.0.20` | `2.0.21` |\n| [clap](https://github.com/clap-rs/clap) | `4.6.6` | `4.6.7` |\n| [libc](https://github.com/rust-lang/libc) | `0.2.189` | `0.2.190` |\n| [tokio](https://github.com/tokio-rs/tokio) | `1.53.1` | `1.53.2` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n\n\nUpdates `toml` from 1.1.4+spec-1.1.0 to 1.1.6+spec-1.1.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/572c005d80cca5f7bd163805c2f33ba0a5207b6d\"\u003e\u003ccode\u003e572c005\u003c/code\u003e\u003c/a\u003e chore: Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/66d0c53e1ec7cfc61f98c30b92f72e2ad1df4536\"\u003e\u003ccode\u003e66d0c53\u003c/code\u003e\u003c/a\u003e docs: Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/07af4e7644d34d2d784bcd4f570c0619ee1626b2\"\u003e\u003ccode\u003e07af4e7\u003c/code\u003e\u003c/a\u003e perf: Reduce allocations in toml_edit parsing and dumping (\u003ca href=\"https://redirect.github.com/toml-rs/toml/issues/1215\"\u003e#1215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/0ff90dbd7d7931b995f91cac661a12818cfd7ab7\"\u003e\u003ccode\u003e0ff90db\u003c/code\u003e\u003c/a\u003e perf(display): Write encoded strings directly\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/efb25365450e5512efa76457fcd53b0bb1ee9c41\"\u003e\u003ccode\u003eefb2536\u003c/code\u003e\u003c/a\u003e perf(display): Move generated representation strings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/075c444fa05f359cce53dda0f1382a07ad72776e\"\u003e\u003ccode\u003e075c444\u003c/code\u003e\u003c/a\u003e refactor(display): Consolidate key-path encoding\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/b48f33869f1024949945157c0ab540a114676fc0\"\u003e\u003ccode\u003eb48f338\u003c/code\u003e\u003c/a\u003e perf(display): Borrow table keys during document output\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/c6c1de348f6e276a58ce57ffdcdeb51065698709\"\u003e\u003ccode\u003ec6c1de3\u003c/code\u003e\u003c/a\u003e perf(parser): Move completed table header keys\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/ec904630a54a9857babc7eab99c39d4bdc8173c4\"\u003e\u003ccode\u003eec90463\u003c/code\u003e\u003c/a\u003e perf(parser): Borrow input when creating editable documents\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/d76a48af2f5bb783969295cf7dbbfb447f324ca1\"\u003e\u003ccode\u003ed76a48a\u003c/code\u003e\u003c/a\u003e test: Benchmark rendering generated keys and values\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/toml-rs/toml/compare/toml-v1.1.4...toml-v1.1.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `thiserror` from 2.0.20 to 2.0.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/thiserror/releases\"\u003ethiserror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix parsing of generic unit variants in display expressions (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\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/dtolnay/thiserror/commit/b1827ee06f81a7d7f954e676771e19a97f9f8e3b\"\u003e\u003ccode\u003eb1827ee\u003c/code\u003e\u003c/a\u003e Release 2.0.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/58037b575a2a5543d0d54a49360554325b49f55a\"\u003e\u003ccode\u003e58037b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e from dtolnay/turbofish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/f82a0cf8f06c71263c2caa26e759f337d2778153\"\u003e\u003ccode\u003ef82a0cf\u003c/code\u003e\u003c/a\u003e Keep track of nested turbofish depth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72ea49262d6412ccbc08f1696dda8626409e657d\"\u003e\u003ccode\u003e72ea492\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72eea0d4ddb17ff9fa873aa74469de850021b22e\"\u003e\u003ccode\u003e72eea0d\u003c/code\u003e\u003c/a\u003e Resolve io_other_error clippy lint in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/07f09a2ec934df58508ce4fa5e7fbf27cca552c2\"\u003e\u003ccode\u003e07f09a2\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.74\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/2715388e8cc5787b3643251f7a7a637e89376688\"\u003e\u003ccode\u003e2715388\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/5a306c7d0a8588caaaaa6a7567aeb25c1c10719b\"\u003e\u003ccode\u003e5a306c7\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/ef9383b37d7c96b01e10df35d3e9e313c7b98b5a\"\u003e\u003ccode\u003eef9383b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-08-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/8336b8407fbfe69177c504cdbc379db20cf6f131\"\u003e\u003ccode\u003e8336b84\u003c/code\u003e\u003c/a\u003e Update ui tests for version 2.0.20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dtolnay/thiserror/compare/2.0.20...2.0.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `clap` from 4.6.6 to 4.6.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/clap-rs/clap/releases\"\u003eclap's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.6.7\u003c/h2\u003e\n\u003ch2\u003e[4.6.7] - 2026-09-14\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Add \u003ccode\u003e#[command(defer = \u0026lt;bool\u0026gt;)]\u003c/code\u003e attribute to opt-in to lazy initialisation of subcommands\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/clap-rs/clap/blob/main/CHANGELOG.md\"\u003eclap's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.6.7] - 2026-09-14\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Add \u003ccode\u003e#[command(defer = \u0026lt;bool\u0026gt;)]\u003c/code\u003e attribute to opt-in to lazy initialisation of subcommands\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/clap-rs/clap/commit/d3e59a9ab214910b9dad02921b7ef42c6400de9b\"\u003e\u003ccode\u003ed3e59a9\u003c/code\u003e\u003c/a\u003e chore: Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/d997f878c484e02b2935d32a7b67afe990e91227\"\u003e\u003ccode\u003ed997f87\u003c/code\u003e\u003c/a\u003e docs: Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/fb6058cc38cf6f4b07b8db89c850fc80e059e222\"\u003e\u003ccode\u003efb6058c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6409\"\u003e#6409\u003c/a\u003e from heaths/pwsh-support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/2310870f7a9fe4c39f5bb5620261a06ac9aaa0b1\"\u003e\u003ccode\u003e2310870\u003c/code\u003e\u003c/a\u003e test(complete): Add tests for completer_for_path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/5967c17393a09f90112cdc5b2c20a1383f0bd8e4\"\u003e\u003ccode\u003e5967c17\u003c/code\u003e\u003c/a\u003e refactor(complete): Move shell detection to Shells\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/594602bb29f374e49da5029df63e5c740c723ad0\"\u003e\u003ccode\u003e594602b\u003c/code\u003e\u003c/a\u003e fix(complete): Detect pwsh for PowerShell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/3a4f2d031b5110aaaac40f1cb1d6c0b8ff619df8\"\u003e\u003ccode\u003e3a4f2d0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6427\"\u003e#6427\u003c/a\u003e from clap-rs/renovate/shlex-2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/67ebaed4ac95a83d5d7cc22d64ee0fc162ae1db3\"\u003e\u003ccode\u003e67ebaed\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6426\"\u003e#6426\u003c/a\u003e from clap-rs/renovate/actions-checkout-7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/c968b136d0e6f560c08b06a844a20f2798a00096\"\u003e\u003ccode\u003ec968b13\u003c/code\u003e\u003c/a\u003e chore(deps): Update Rust crate shlex to v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/8f247cbf58c582a755ee4dbe62a2390d93b9f8eb\"\u003e\u003ccode\u003e8f247cb\u003c/code\u003e\u003c/a\u003e chore(deps): Update actions/checkout action to v7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/clap-rs/clap/compare/clap_complete-v4.6.6...clap_complete-v4.6.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `libc` from 0.2.189 to 0.2.190\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/libc/releases\"\u003elibc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.2.190\u003c/h2\u003e\n\u003cp\u003eThere is now a single config for enabling 64-bit \u003ccode\u003etime_t\u003c/code\u003e: \u003ccode\u003elibc_unstable_time64\u003c/code\u003e. This can be set\nunconditionally; it opts in to 64-bit \u003ccode\u003etime_t\u003c/code\u003e on the following platforms that use 32-bit by\ndefault:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e32-bit Linux-GNU\u003c/li\u003e\n\u003cli\u003e32-bit Linux-uClibc\u003c/li\u003e\n\u003cli\u003e32-bit Linux-musl. Note that setting this flag also enables some other changes that happend in\nmusl v1.2.\u003c/li\u003e\n\u003cli\u003e32-bit Windows-GNU\u003c/li\u003e\n\u003cli\u003eESP-IDF (all targets with this environment are 32-bit)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMost other 32-bit platforms are either already using 64-bit \u003ccode\u003etime_t\u003c/code\u003e, or are considered legacy\nand will not be gaining support from their upstream maintainers.\u003c/p\u003e\n\u003cp\u003eYou can enable this using \u003ccode\u003eRUSTFLAGS\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_time64' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote that there may still be some changes to features gated by this config option, hence \u0026quot;unstable\u0026quot;\nin its name. In the near future we will rename it to just \u003ccode\u003elibc_time64\u003c/code\u003e. Until then, please test it\nout and report any bugs you find!\u003c/p\u003e\n\u003ch3\u003eSupport\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd initial support for HelenOS (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4355\"\u003e#4355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cp\u003eWe are slowly filling out the \u003ccode\u003eDefault\u003c/code\u003e implementations, to reduce the need for \u003ccode\u003emem::zeroed()\u003c/code\u003e in user code:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUnix: Implement \u003ccode\u003eDefault\u003c/code\u003e for a number of structs, especially on Apple platforms (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5576\"\u003e#5576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux, NetBSD: Give \u003ccode\u003estatvfs\u003c/code\u003e a \u003ccode\u003eDefault\u003c/code\u003e impl (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5583\"\u003e#5583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux: Add \u003ccode\u003eDefault\u003c/code\u003e to a \u003ccode\u003elinux/can.rs\u003c/code\u003e structs (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5257\"\u003e#5257\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther additions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eExpose the \u003ccode\u003elibc_unstable_time64\u003c/code\u003e cfg (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5411\"\u003e#5411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid, Glibc: Add \u003ccode\u003epthread_gettid_np\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5359\"\u003e#5359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add \u003ccode\u003eRTLD_NEXT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5323\"\u003e#5323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add reuseport BPF socket options (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5366\"\u003e#5366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add TCP header flags, options and SACK limits (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5358\"\u003e#5358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eNET_RT_DUMP2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5442\"\u003e#5442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5558\"\u003e#5558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eBPF_WORDALIGN\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5320\"\u003e#5320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003elchmod\u003c/code\u003e and \u003ccode\u003elchflags\u003c/code\u003e where supported (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5400\"\u003e#5400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eminherit\u003c/code\u003e and related constants (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4849\"\u003e#4849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Add more links to public headers and manual pages (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5407\"\u003e#5407\u003c/a\u003e), (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5485\"\u003e#5485\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/rust-lang/libc/blob/0.2.190/CHANGELOG.md\"\u003elibc's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.189...0.2.190\"\u003e0.2.190\u003c/a\u003e - 2026-10-02\u003c/h2\u003e\n\u003cp\u003eThere is now a single config for enabling 64-bit \u003ccode\u003etime_t\u003c/code\u003e: \u003ccode\u003elibc_unstable_time64\u003c/code\u003e. This can be set\nunconditionally; it opts in to 64-bit \u003ccode\u003etime_t\u003c/code\u003e on the following platforms that use 32-bit by\ndefault:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e32-bit Linux-GNU\u003c/li\u003e\n\u003cli\u003e32-bit Linux-uClibc\u003c/li\u003e\n\u003cli\u003e32-bit Linux-musl. Note that setting this flag also enables some other changes that happend in\nmusl v1.2.\u003c/li\u003e\n\u003cli\u003e32-bit Windows-GNU\u003c/li\u003e\n\u003cli\u003eESP-IDF (all targets with this environment are 32-bit)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMost other 32-bit platforms are either already using 64-bit \u003ccode\u003etime_t\u003c/code\u003e, or are considered legacy\nand will not be gaining support from their upstream maintainers.\u003c/p\u003e\n\u003cp\u003eYou can enable this using \u003ccode\u003eRUSTFLAGS\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_time64' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote that there may still be some changes to features gated by this config option, hence \u0026quot;unstable\u0026quot;\nin its name. In the near future we will rename it to just \u003ccode\u003elibc_time64\u003c/code\u003e. Until then, please test it\nout and report any bugs you find!\u003c/p\u003e\n\u003ch3\u003eSupport\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd initial support for HelenOS (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4355\"\u003e#4355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cp\u003eWe are slowly filling out the \u003ccode\u003eDefault\u003c/code\u003e implementations, to reduce the need for \u003ccode\u003emem::zeroed()\u003c/code\u003e in user code:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUnix: Implement \u003ccode\u003eDefault\u003c/code\u003e for a number of structs, especially on Apple platforms (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5576\"\u003e#5576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux, NetBSD: Give \u003ccode\u003estatvfs\u003c/code\u003e a \u003ccode\u003eDefault\u003c/code\u003e impl (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5583\"\u003e#5583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux: Add \u003ccode\u003eDefault\u003c/code\u003e to a \u003ccode\u003elinux/can.rs\u003c/code\u003e structs (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5257\"\u003e#5257\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther additions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eExpose the \u003ccode\u003elibc_unstable_time64\u003c/code\u003e cfg (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5411\"\u003e#5411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid, Glibc: Add \u003ccode\u003epthread_gettid_np\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5359\"\u003e#5359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add \u003ccode\u003eRTLD_NEXT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5323\"\u003e#5323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add reuseport BPF socket options (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5366\"\u003e#5366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add TCP header flags, options and SACK limits (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5358\"\u003e#5358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eNET_RT_DUMP2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5442\"\u003e#5442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5558\"\u003e#5558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eBPF_WORDALIGN\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5320\"\u003e#5320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003elchmod\u003c/code\u003e and \u003ccode\u003elchflags\u003c/code\u003e where supported (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5400\"\u003e#5400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eminherit\u003c/code\u003e and related constants (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4849\"\u003e#4849\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/rust-lang/libc/commit/7b0ab5528dc7f361f3a0b4c06c2cad9971617f75\"\u003e\u003ccode\u003e7b0ab55\u003c/code\u003e\u003c/a\u003e ci: Rename \u003ccode\u003epublish_0.2.yml\u003c/code\u003e to \u003ccode\u003erelease.yaml\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/ac85dde5fc269ab4a8cd935d3f76adf85372677c\"\u003e\u003ccode\u003eac85dde\u003c/code\u003e\u003c/a\u003e ci: Sync release permissions with \u003ccode\u003emain\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8f8cd2032060e1477c08077cd5f89215384723e2\"\u003e\u003ccode\u003e8f8cd20\u003c/code\u003e\u003c/a\u003e libc: Release 0.2.190\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/052c6e6a0186eeecf22c743d57c65a9963571241\"\u003e\u003ccode\u003e052c6e6\u003c/code\u003e\u003c/a\u003e changelog: Fix an incorrect commit link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/ea19fd7fba435c629ed247de7138d5cdb1dea309\"\u003e\u003ccode\u003eea19fd7\u003c/code\u003e\u003c/a\u003e test: Remove explicit \u003ccode\u003elibc\u003c/code\u003e version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/6dbf3a29a0a972087b684bc6d6cbf20f92143b66\"\u003e\u003ccode\u003e6dbf3a2\u003c/code\u003e\u003c/a\u003e dragonfly: Move \u003ccode\u003eINHERIT_ZERO\u003c/code\u003e to the freebsd module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8a64766c8514865dea77cfc3216f5a9dc38c6728\"\u003e\u003ccode\u003e8a64766\u003c/code\u003e\u003c/a\u003e apple: add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/28de5147ff5665b835472f00ead49da71084a593\"\u003e\u003ccode\u003e28de514\u003c/code\u003e\u003c/a\u003e linux, netbsd: Give statvfs a \u003ccode\u003eDefault\u003c/code\u003e impl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/a58a95f01d0561e75261052f5d8b3ad188f1ae4e\"\u003e\u003ccode\u003ea58a95f\u003c/code\u003e\u003c/a\u003e cygwin: Change \u003ccode\u003ePOSIX_SPAWN_*\u003c/code\u003e flags to \u003ccode\u003ec_short\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/d175264e718db4f216df7aad5f1291fd0ec34139\"\u003e\u003ccode\u003ed175264\u003c/code\u003e\u003c/a\u003e apple: \u003ccode\u003etimeval32\u003c/code\u003e is exhaustive\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.189...0.2.190\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokio` from 1.53.1 to 1.53.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tokio-rs/tokio/releases\"\u003etokio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTokio v1.53.2\u003c/h2\u003e\n\u003ch1\u003e1.53.2 (October 3rd, 2026)\u003c/h1\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eio: revert \u0026quot;always cleanup \u003ccode\u003eAsyncFd\u003c/code\u003e registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eprocess: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix mpsc index wraparound in block reclamation (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: forget mpsc \u003ccode\u003ePermit\u003c/code\u003e before sending value (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: validate \u003ccode\u003eMAX_PERMITS\u003c/code\u003e in \u003ccode\u003eSemaphore::acquire\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: wake broadcast \u003ccode\u003eSender::closed\u003c/code\u003e outside mutex (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etask: drop replaced waker outside lock in \u003ccode\u003eJoinSet\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop timer lock before dropping waker in \u003ccode\u003eclear_entry\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: expire timers directly on shutdown without rotating wheel (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed (unstable)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: clamp \u003ccode\u003eio_uring\u003c/code\u003e read length to \u003ccode\u003eu32::MAX\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: ignore \u003ccode\u003ecurrent_thread\u003c/code\u003e task dumps from other runtimes (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: preserve \u003ccode\u003eio_uring\u003c/code\u003e context if a completion waker panics (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix semaphore use-after-free and permit leak on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etaskdump: restore deferred leaf wakes during capture (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop stored waker when cancelling alt timer entry (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8445\"\u003etokio-rs/tokio#8445\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8572\"\u003etokio-rs/tokio#8572\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8540\"\u003etokio-rs/tokio#8540\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8542\"\u003etokio-rs/tokio#8542\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8544\"\u003etokio-rs/tokio#8544\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8546\"\u003etokio-rs/tokio#8546\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8548\"\u003etokio-rs/tokio#8548\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8550\"\u003etokio-rs/tokio#8550\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8552\"\u003etokio-rs/tokio#8552\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8554\"\u003etokio-rs/tokio#8554\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8558\"\u003etokio-rs/tokio#8558\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8560\"\u003etokio-rs/tokio#8560\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8562\"\u003etokio-rs/tokio#8562\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8564\"\u003etokio-rs/tokio#8564\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8566\"\u003etokio-rs/tokio#8566\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8570\"\u003etokio-rs/tokio#8570\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8574\"\u003etokio-rs/tokio#8574\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ff0c4068a4ba5f3af0fe3c5657ba42879b6ea599\"\u003e\u003ccode\u003eff0c406\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.53.2 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8580\"\u003e#8580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/a762700e41bf027630ba4620cfd80d127b7c801d\"\u003e\u003ccode\u003ea762700\u003c/code\u003e\u003c/a\u003e Merge 'tokio-1.51.5' into 'tokio-1.53.x' (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8577\"\u003e#8577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ec31a9f62c9426cec415c8c79e0608dd2866bbf7\"\u003e\u003ccode\u003eec31a9f\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.51.5 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8579\"\u003e#8579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/625c85108da5ad0d482702a21d7d58a56ea06a48\"\u003e\u003ccode\u003e625c851\u003c/code\u003e\u003c/a\u003e sync: assign semaphore permits before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/832dd233293eaa59ba19cc6f5dc4753aab55ac13\"\u003e\u003ccode\u003e832dd23\u003c/code\u003e\u003c/a\u003e sync: avoid leaking semaphore permits on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/826954a2f3b6f595121c38875a5d81ca3e5f6cc6\"\u003e\u003ccode\u003e826954a\u003c/code\u003e\u003c/a\u003e sync: unlink semaphore waiter before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/9a479922501eb47102ab844fa40e4b28d1a3c250\"\u003e\u003ccode\u003e9a47992\u003c/code\u003e\u003c/a\u003e process: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/2fc5972b8bd6f51d1ad6df3bcc1a1927d1702663\"\u003e\u003ccode\u003e2fc5972\u003c/code\u003e\u003c/a\u003e fs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/85a6d13882e2ccf5c24131b282bab0214b0a493e\"\u003e\u003ccode\u003e85a6d13\u003c/code\u003e\u003c/a\u003e io: revert \u0026quot;always cleanup AsyncFd registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/436faa2da3970817653fef98c9abc6c8b4367f51\"\u003e\u003ccode\u003e436faa2\u003c/code\u003e\u003c/a\u003e rt: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tokio-rs/tokio/compare/tokio-1.53.1...tokio-1.53.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fulgur-rs/fulgur/pull/823","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fulgur-rs%2Ffulgur/issues/823","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/823/packages"},{"uuid":"5736275125","node_id":"PR_kwDORFPBjM8AAAABHAnFSw","number":2522,"state":"open","title":"chore(deps): bump the rust-dependencies group across 1 directory with 6 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-06T22:30:59.000Z","updated_at":"2026-10-06T22:31:57.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"rust-dependencies","update_count":6,"packages":[{"name":"tokio","old_version":"1.53.1","new_version":"1.53.2","repository_url":"https://github.com/tokio-rs/tokio"},{"name":"insta","old_version":"1.48.0","new_version":"1.49.0","repository_url":"https://github.com/mitsuhiko/insta"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"napi","old_version":"3.13.0","new_version":"3.14.0","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-derive","old_version":"3.6.9","new_version":"3.6.10","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-build","old_version":"2.5.0","new_version":"2.6.0","repository_url":"https://github.com/napi-rs/napi-rs"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the rust-dependencies group with 6 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [tokio](https://github.com/tokio-rs/tokio) | `1.53.1` | `1.53.2` |\n| [insta](https://github.com/mitsuhiko/insta) | `1.48.0` | `1.49.0` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [napi](https://github.com/napi-rs/napi-rs) | `3.13.0` | `3.14.0` |\n| [napi-derive](https://github.com/napi-rs/napi-rs) | `3.6.9` | `3.6.10` |\n| [napi-build](https://github.com/napi-rs/napi-rs) | `2.5.0` | `2.6.0` |\n\n\nUpdates `tokio` from 1.53.1 to 1.53.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tokio-rs/tokio/releases\"\u003etokio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTokio v1.53.2\u003c/h2\u003e\n\u003ch1\u003e1.53.2 (October 3rd, 2026)\u003c/h1\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eio: revert \u0026quot;always cleanup \u003ccode\u003eAsyncFd\u003c/code\u003e registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eprocess: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix mpsc index wraparound in block reclamation (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: forget mpsc \u003ccode\u003ePermit\u003c/code\u003e before sending value (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: validate \u003ccode\u003eMAX_PERMITS\u003c/code\u003e in \u003ccode\u003eSemaphore::acquire\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: wake broadcast \u003ccode\u003eSender::closed\u003c/code\u003e outside mutex (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etask: drop replaced waker outside lock in \u003ccode\u003eJoinSet\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop timer lock before dropping waker in \u003ccode\u003eclear_entry\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: expire timers directly on shutdown without rotating wheel (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed (unstable)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: clamp \u003ccode\u003eio_uring\u003c/code\u003e read length to \u003ccode\u003eu32::MAX\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: ignore \u003ccode\u003ecurrent_thread\u003c/code\u003e task dumps from other runtimes (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: preserve \u003ccode\u003eio_uring\u003c/code\u003e context if a completion waker panics (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix semaphore use-after-free and permit leak on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etaskdump: restore deferred leaf wakes during capture (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop stored waker when cancelling alt timer entry (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8445\"\u003etokio-rs/tokio#8445\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8572\"\u003etokio-rs/tokio#8572\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8540\"\u003etokio-rs/tokio#8540\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8542\"\u003etokio-rs/tokio#8542\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8544\"\u003etokio-rs/tokio#8544\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8546\"\u003etokio-rs/tokio#8546\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8548\"\u003etokio-rs/tokio#8548\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8550\"\u003etokio-rs/tokio#8550\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8552\"\u003etokio-rs/tokio#8552\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8554\"\u003etokio-rs/tokio#8554\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8558\"\u003etokio-rs/tokio#8558\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8560\"\u003etokio-rs/tokio#8560\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8562\"\u003etokio-rs/tokio#8562\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8564\"\u003etokio-rs/tokio#8564\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8566\"\u003etokio-rs/tokio#8566\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8570\"\u003etokio-rs/tokio#8570\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8574\"\u003etokio-rs/tokio#8574\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ff0c4068a4ba5f3af0fe3c5657ba42879b6ea599\"\u003e\u003ccode\u003eff0c406\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.53.2 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8580\"\u003e#8580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/a762700e41bf027630ba4620cfd80d127b7c801d\"\u003e\u003ccode\u003ea762700\u003c/code\u003e\u003c/a\u003e Merge 'tokio-1.51.5' into 'tokio-1.53.x' (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8577\"\u003e#8577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ec31a9f62c9426cec415c8c79e0608dd2866bbf7\"\u003e\u003ccode\u003eec31a9f\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.51.5 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8579\"\u003e#8579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/625c85108da5ad0d482702a21d7d58a56ea06a48\"\u003e\u003ccode\u003e625c851\u003c/code\u003e\u003c/a\u003e sync: assign semaphore permits before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/832dd233293eaa59ba19cc6f5dc4753aab55ac13\"\u003e\u003ccode\u003e832dd23\u003c/code\u003e\u003c/a\u003e sync: avoid leaking semaphore permits on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/826954a2f3b6f595121c38875a5d81ca3e5f6cc6\"\u003e\u003ccode\u003e826954a\u003c/code\u003e\u003c/a\u003e sync: unlink semaphore waiter before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/9a479922501eb47102ab844fa40e4b28d1a3c250\"\u003e\u003ccode\u003e9a47992\u003c/code\u003e\u003c/a\u003e process: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/2fc5972b8bd6f51d1ad6df3bcc1a1927d1702663\"\u003e\u003ccode\u003e2fc5972\u003c/code\u003e\u003c/a\u003e fs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/85a6d13882e2ccf5c24131b282bab0214b0a493e\"\u003e\u003ccode\u003e85a6d13\u003c/code\u003e\u003c/a\u003e io: revert \u0026quot;always cleanup AsyncFd registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/436faa2da3970817653fef98c9abc6c8b4367f51\"\u003e\u003ccode\u003e436faa2\u003c/code\u003e\u003c/a\u003e rt: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tokio-rs/tokio/compare/tokio-1.53.1...tokio-1.53.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `insta` from 1.48.0 to 1.49.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mitsuhiko/insta/releases\"\u003einsta's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.49.0\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003eOption\u0026lt;\u0026amp;OsStr\u0026gt;\u003c/code\u003e snapshot names, such as \u003ccode\u003ePath::file_name()\u003c/code\u003e,\nwithout explicit string conversion. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/929\"\u003e#929\u003c/a\u003e (\u003ca href=\"https://github.com/dislogical\"\u003e\u003ccode\u003e@​dislogical\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd prebuilt \u003ccode\u003ecargo-insta\u003c/code\u003e binaries for ARM64 Linux\n(\u003ccode\u003eaarch64-unknown-linux-gnu\u003c/code\u003e). \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/942\"\u003e#942\u003c/a\u003e (\u003ca href=\"https://github.com/aljohri\"\u003e\u003ccode\u003e@​aljohri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON serialization of maps keyed by unit enum variants. Keys use the\nserialized variant name, including serde renames. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/934\"\u003e#934\u003c/a\u003e (\u003ca href=\"https://github.com/teddytennant\"\u003e\u003ccode\u003e@​teddytennant\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove trailing semicolons from serialization macro bodies to avoid\ncompiler warnings when used in expression position. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/940\"\u003e#940\u003c/a\u003e (\u003ca href=\"https://github.com/Tiwalun\"\u003e\u003ccode\u003e@​Tiwalun\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention \u003ccode\u003eINSTA_UPDATE=always\u003c/code\u003e in snapshot mismatch hints for file\nsnapshots. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/927\"\u003e#927\u003c/a\u003e (\u003ca href=\"https://github.com/hiro-nikaitou\"\u003e\u003ccode\u003e@​hiro-nikaitou\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate the lockfile's \u003ccode\u003etempfile\u003c/code\u003e and \u003ccode\u003erustix\u003c/code\u003e dependencies to fix builds\nwith newer Rust toolchains. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/939\"\u003e#939\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecargo insta test --all-targets --test-runner nextest\u003c/code\u003e failing with\n\u0026quot;Can't mix --doc with other target selecting options\u0026quot;. Like \u003ccode\u003ecargo test --all-targets\u003c/code\u003e, it no longer runs doctests. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/460\"\u003e#460\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall cargo-insta 1.49.0\u003c/h2\u003e\n\u003ch3\u003eInstall prebuilt binaries via shell script\u003c/h3\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003ecurl --proto '=https' --tlsv1.2 -LsSf https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-installer.sh | sh\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eInstall prebuilt binaries via powershell script\u003c/h3\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003epowershell -ExecutionPolicy Bypass -c \u0026quot;irm https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-installer.ps1 | iex\u0026quot;\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eDownload cargo-insta 1.49.0\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eFile\u003c/th\u003e\n\u003cth\u003ePlatform\u003c/th\u003e\n\u003cth\u003eChecksum\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-aarch64-apple-darwin.tar.xz\"\u003ecargo-insta-aarch64-apple-darwin.tar.xz\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eApple Silicon macOS\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-aarch64-apple-darwin.tar.xz.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-apple-darwin.tar.xz\"\u003ecargo-insta-x86_64-apple-darwin.tar.xz\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eIntel macOS\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-apple-darwin.tar.xz.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-pc-windows-msvc.zip\"\u003ecargo-insta-x86_64-pc-windows-msvc.zip\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ex64 Windows\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-pc-windows-msvc.zip.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-aarch64-unknown-linux-gnu.tar.xz\"\u003ecargo-insta-aarch64-unknown-linux-gnu.tar.xz\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eARM64 Linux\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-aarch64-unknown-linux-gnu.tar.xz.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-unknown-linux-gnu.tar.xz\"\u003ecargo-insta-x86_64-unknown-linux-gnu.tar.xz\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ex64 Linux\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-unknown-linux-gnu.tar.xz.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-unknown-linux-musl.tar.xz\"\u003ecargo-insta-x86_64-unknown-linux-musl.tar.xz\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ex64 MUSL Linux\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-unknown-linux-musl.tar.xz.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cblockquote\u003e\n\u003cp\u003e\u003cem\u003eThis was written by Codex on behalf of \u003ca href=\"https://github.com/max-sixty\"\u003e\u003ccode\u003e@​max-sixty\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/p\u003e\n\u003c/blockquote\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/mitsuhiko/insta/blob/master/CHANGELOG.md\"\u003einsta's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.49.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003eOption\u0026lt;\u0026amp;OsStr\u0026gt;\u003c/code\u003e snapshot names, such as \u003ccode\u003ePath::file_name()\u003c/code\u003e,\nwithout explicit string conversion. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/929\"\u003e#929\u003c/a\u003e (\u003ca href=\"https://github.com/dislogical\"\u003e\u003ccode\u003e@​dislogical\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd prebuilt \u003ccode\u003ecargo-insta\u003c/code\u003e binaries for ARM64 Linux\n(\u003ccode\u003eaarch64-unknown-linux-gnu\u003c/code\u003e). \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/942\"\u003e#942\u003c/a\u003e (\u003ca href=\"https://github.com/aljohri\"\u003e\u003ccode\u003e@​aljohri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON serialization of maps keyed by unit enum variants. Keys use the\nserialized variant name, including serde renames. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/934\"\u003e#934\u003c/a\u003e (\u003ca href=\"https://github.com/teddytennant\"\u003e\u003ccode\u003e@​teddytennant\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove trailing semicolons from serialization macro bodies to avoid\ncompiler warnings when used in expression position. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/940\"\u003e#940\u003c/a\u003e (\u003ca href=\"https://github.com/Tiwalun\"\u003e\u003ccode\u003e@​Tiwalun\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention \u003ccode\u003eINSTA_UPDATE=always\u003c/code\u003e in snapshot mismatch hints for file\nsnapshots. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/927\"\u003e#927\u003c/a\u003e (\u003ca href=\"https://github.com/hiro-nikaitou\"\u003e\u003ccode\u003e@​hiro-nikaitou\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate the lockfile's \u003ccode\u003etempfile\u003c/code\u003e and \u003ccode\u003erustix\u003c/code\u003e dependencies to fix builds\nwith newer Rust toolchains. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/939\"\u003e#939\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecargo insta test --all-targets --test-runner nextest\u003c/code\u003e failing with\n\u0026quot;Can't mix --doc with other target selecting options\u0026quot;. Like \u003ccode\u003ecargo test --all-targets\u003c/code\u003e, it no longer runs doctests. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/460\"\u003e#460\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/mitsuhiko/insta/commit/5df39ceafc8a47f82ec9953aaba12072d316adc8\"\u003e\u003ccode\u003e5df39ce\u003c/code\u003e\u003c/a\u003e Release 1.49.0 (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/944\"\u003e#944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/1c28c19e812a0b538ae8f75eb2424e63eb028761\"\u003e\u003ccode\u003e1c28c19\u003c/code\u003e\u003c/a\u003e Skip the separate doctest run for nextest with \u003ccode\u003e--all-targets\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/941\"\u003e#941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/064742e9b7b2f3eaabb4724069e739ddf23d8227\"\u003e\u003ccode\u003e064742e\u003c/code\u003e\u003c/a\u003e Build cargo-insta for aarch64-unknown-linux-gnu (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/942\"\u003e#942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/08b67d940a363501c2c94d7246a2073210e7e03d\"\u003e\u003ccode\u003e08b67d9\u003c/code\u003e\u003c/a\u003e Remove trailing semicolons from macro bodies (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/940\"\u003e#940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/06858e1c92ceef33d90e642cfce6e2fd36fbd1e2\"\u003e\u003ccode\u003e06858e1\u003c/code\u003e\u003c/a\u003e fix: regenerate Cargo.lock to avoid broken rustix 0.37.27 (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/939\"\u003e#939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/70be034869ec431519919d60102c2e65e7b54bae\"\u003e\u003ccode\u003e70be034\u003c/code\u003e\u003c/a\u003e Serialize unit enum variants used as JSON map keys (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/934\"\u003e#934\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/54d0b9691c3a951c0f82e1d6fa8ebe6a7130804d\"\u003e\u003ccode\u003e54d0b96\u003c/code\u003e\u003c/a\u003e feat: implement From for SnapshotValue with OsStr (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/929\"\u003e#929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/3d62572f910cd19eba45673b37ad91293d82b689\"\u003e\u003ccode\u003e3d62572\u003c/code\u003e\u003c/a\u003e [fix] Mention INSTA_UPDATE variable in snapshot mismatch errors (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/927\"\u003e#927\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/1712876439ad9ba9f5d32aff3deedcc909dd8917\"\u003e\u003ccode\u003e1712876\u003c/code\u003e\u003c/a\u003e ci: run CI on a pinned toolchain via rust-toolchain.toml; fix format-arg lint...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/mitsuhiko/insta/compare/1.48.0...1.49.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi` from 3.13.0 to 3.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-v3.14.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(napi)\u003c/em\u003e lock the allocator on threaded WASI and never hang after a worker crash (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3552\"\u003e#3552\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-v3.13.0...napi-v3.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-derive` from 3.6.9 to 3.6.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-derive's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-derive-v3.6.10\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate Cargo.toml dependencies\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-derive-v3.6.9...napi-derive-v3.6.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-build` from 2.5.0 to 2.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-build's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-build-v2.6.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(async-runtime)\u003c/em\u003e offer the MultiThread flavor on wasm32-wasip1-threads (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3541\"\u003e#3541\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/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-build-v2.5.0...napi-build-v2.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/everruns/bashkit/pull/2522","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/everruns%2Fbashkit/issues/2522","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2522/packages"},{"uuid":"5725698195","node_id":"PR_kwDOTEV0gs8AAAABG4GCDQ","number":1907,"state":"open","title":"chore(deps): Bump the cargo-minor-patch group across 1 directory with 8 updates","user":"dependabot[bot]","labels":["rust","dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-06T08:54:19.000Z","updated_at":"2026-10-06T08:58:59.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): Bump","group_name":"cargo-minor-patch","update_count":8,"packages":[{"name":"napi","old_version":"3.13.0","new_version":"3.14.0","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-build","old_version":"2.5.0","new_version":"2.6.0","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-derive","old_version":"3.6.9","new_version":"3.6.10","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"pg_query","old_version":"6.2.0","new_version":"6.2.1","repository_url":"https://github.com/pganalyze/pg_query.rs"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"pyo3-build-config","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"uuid","old_version":"1.26.1","new_version":"1.27.0","repository_url":"https://github.com/uuid-rs/uuid"},{"name":"wat","old_version":"1.259.0","new_version":"1.261.0","repository_url":"https://github.com/bytecodealliance/wasm-tools"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the cargo-minor-patch group with 8 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [napi](https://github.com/napi-rs/napi-rs) | `3.13.0` | `3.14.0` |\n| [napi-build](https://github.com/napi-rs/napi-rs) | `2.5.0` | `2.6.0` |\n| [napi-derive](https://github.com/napi-rs/napi-rs) | `3.6.9` | `3.6.10` |\n| [pg_query](https://github.com/pganalyze/pg_query.rs) | `6.2.0` | `6.2.1` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [pyo3-build-config](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [uuid](https://github.com/uuid-rs/uuid) | `1.26.1` | `1.27.0` |\n| [wat](https://github.com/bytecodealliance/wasm-tools) | `1.259.0` | `1.261.0` |\n\n\nUpdates `napi` from 3.13.0 to 3.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-v3.14.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(napi)\u003c/em\u003e lock the allocator on threaded WASI and never hang after a worker crash (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3552\"\u003e#3552\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-v3.13.0...napi-v3.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-build` from 2.5.0 to 2.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-build's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-build-v2.6.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(async-runtime)\u003c/em\u003e offer the MultiThread flavor on wasm32-wasip1-threads (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3541\"\u003e#3541\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/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-build-v2.5.0...napi-build-v2.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-derive` from 3.6.9 to 3.6.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-derive's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-derive-v3.6.10\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate Cargo.toml dependencies\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-derive-v3.6.9...napi-derive-v3.6.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pg_query` from 6.2.0 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pganalyze/pg_query.rs/blob/main/CHANGELOG.md\"\u003epg_query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1   2026-09-30\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to libpg_query 17-6.2.5\u003c/li\u003e\n\u003cli\u003eSecurity fix: Heap out-of-bounds write and read in pg_query_normalize (\u003ca href=\"https://github.com/pganalyze/libpg_query/security/advisories/GHSA-6ggm-xmc9-8ffg\"\u003eGHSA-6ggm-xmc9-8ffg\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeparser:\n\u003cul\u003e\n\u003cli\u003eAdd strict checking for unexpected pointer values\u003c/li\u003e\n\u003cli\u003ePreserve parentheses around subscripted array constructors\n\u003cul\u003e\n\u003cli\u003eThis prevents \u003ccode\u003e(ARRAY[...])[...]\u003c/code\u003e from being deparsed as invalid SQL\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix handling of constraint key named \u003ccode\u003evalue\u003c/code\u003e in \u003ccode\u003eALTER TABLE\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003epg_query_normalize:\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eNOTIFY\u003c/code\u003e statements\u003c/li\u003e\n\u003cli\u003eAvoid undefined behaviour for overly large parameter references\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pganalyze/pg_query.rs/commit/c780e49d095c7c97def832e45ada3f559d5b42cf\"\u003e\u003ccode\u003ec780e49\u003c/code\u003e\u003c/a\u003e Release 6.2.1 (\u003ca href=\"https://redirect.github.com/pganalyze/pg_query.rs/issues/84\"\u003e#84\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pganalyze/pg_query.rs/commit/288e41028cf5b8380c30a3c860cba87592a241e8\"\u003e\u003ccode\u003e288e410\u003c/code\u003e\u003c/a\u003e Propagate real bindgen error in build.rs (\u003ca href=\"https://redirect.github.com/pganalyze/pg_query.rs/issues/81\"\u003e#81\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/pganalyze/pg_query.rs/compare/v6.2.0...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3-build-config` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3-build-config's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3-build-config's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `uuid` from 1.26.1 to 1.27.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uuid-rs/uuid/releases\"\u003euuid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.27.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAccept case-insensitive urn:uuid: prefixes when parsing by \u003ca href=\"https://github.com/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix ordering of V7 UUIDs created by earlier seconds with later subsec nanos by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/915\"\u003euuid-rs/uuid#915\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.27.0 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/917\"\u003euuid-rs/uuid#917\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/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\"\u003ehttps://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/b62154e8be41ce42127cba08ee5e5cef3e2ea971\"\u003e\u003ccode\u003eb62154e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/917\"\u003e#917\u003c/a\u003e from uuid-rs/cargo/v1.27.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/ffd8ec55f20006fa2b5978cc03a1e671835040e9\"\u003e\u003ccode\u003effd8ec5\u003c/code\u003e\u003c/a\u003e prepare for 1.27.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4b6c10f9dd9cf37809460859ab88071d43703398\"\u003e\u003ccode\u003e4b6c10f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/915\"\u003e#915\u003c/a\u003e from uuid-rs/fix/v7-ordering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a1aa126f97cdc8d9c5c25d56efa0e7bcb9ab0514\"\u003e\u003ccode\u003ea1aa126\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/912\"\u003e#912\u003c/a\u003e from jaideeppyne/fix/urn-prefix-case-insensitive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4639d67b0f117a94cf0add01e4c68e674691b49c\"\u003e\u003ccode\u003e4639d67\u003c/code\u003e\u003c/a\u003e fix ordering of V7 UUIDs created by earlier seconds with later subsec nanos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/272370344a977ee0641ffa4d01b7ad3ca0eda687\"\u003e\u003ccode\u003e2723703\u003c/code\u003e\u003c/a\u003e bump MSRV to 1.89.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a3e64faaf7fdf583260fc18a594b099677855eea\"\u003e\u003ccode\u003ea3e64fa\u003c/code\u003e\u003c/a\u003e refactor: simplify URN prefix parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/5055fd41c7f33c16a1eac3198eac6224ec18b61d\"\u003e\u003ccode\u003e5055fd4\u003c/code\u003e\u003c/a\u003e refactor: inline case-insensitive URN prefix checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/cb8b1d51421df4828c11ebca6b54c5986caafef6\"\u003e\u003ccode\u003ecb8b1d5\u003c/code\u003e\u003c/a\u003e refactor: simplify case-insensitive URN parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/285967db45b800ffda5032d12c32e3d4e2620902\"\u003e\u003ccode\u003e285967d\u003c/code\u003e\u003c/a\u003e Accept case-insensitive urn:uuid: prefixes when parsing\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `wat` from 1.259.0 to 1.261.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/releases\"\u003ewat's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.261.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch to ignoring semver-minor updates by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2710\"\u003ebytecodealliance/wasm-tools#2710\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump actions/setup-node from 4 to 7 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/bytecodealliance/wasm-tools/pull/2712\"\u003ebytecodealliance/wasm-tools#2712\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore semver-patch updates in dependabot by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2716\"\u003ebytecodealliance/wasm-tools#2716\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewit-parser: reject duplicate record fields, flags and cases by \u003ca href=\"https://github.com/youdie006\"\u003e\u003ccode\u003e@​youdie006\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2698\"\u003ebytecodealliance/wasm-tools#2698\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-wave: Upgrade logos to 0.16.1 by \u003ca href=\"https://github.com/lann\"\u003e\u003ccode\u003e@​lann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2718\"\u003ebytecodealliance/wasm-tools#2718\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewit-parser: reject flags with more than 32 members by \u003ca href=\"https://github.com/youdie006\"\u003e\u003ccode\u003e@​youdie006\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2719\"\u003ebytecodealliance/wasm-tools#2719\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix some issues validating custom sections by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2720\"\u003ebytecodealliance/wasm-tools#2720\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix incremental parsing of component \u003ccode\u003estart\u003c/code\u003e section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2722\"\u003ebytecodealliance/wasm-tools#2722\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_var_s33\u003c/code\u003e and handling in component defined types by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2723\"\u003ebytecodealliance/wasm-tools#2723\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject truncated nested modules and components by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2724\"\u003ebytecodealliance/wasm-tools#2724\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix validation of the key types of \u003ccode\u003emap\u003c/code\u003e by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2725\"\u003ebytecodealliance/wasm-tools#2725\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTighten some feature gates in \u003ccode\u003ewasmparser\u003c/code\u003e by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2721\"\u003ebytecodealliance/wasm-tools#2721\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix disallowing borrows in streams/futures/values by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2727\"\u003ebytecodealliance/wasm-tools#2727\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix some custom-descriptors validation of dead code by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2734\"\u003ebytecodealliance/wasm-tools#2734\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit total components/modules in validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2730\"\u003ebytecodealliance/wasm-tools#2730\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix validation of tags in components by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2741\"\u003ebytecodealliance/wasm-tools#2741\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease wasm-tools 1.261.0 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2738\"\u003ebytecodealliance/wasm-tools#2738\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix incorrect async callback validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2742\"\u003ebytecodealliance/wasm-tools#2742\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/compare/v1.260.0...v1.261.0\"\u003ehttps://github.com/bytecodealliance/wasm-tools/compare/v1.260.0...v1.261.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.260.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eperf: optimize \u003ccode\u003eOperatorsReader::skip_const_expr\u003c/code\u003e by \u003ca href=\"https://github.com/dishmaker\"\u003e\u003ccode\u003e@​dishmaker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2653\"\u003ebytecodealliance/wasm-tools#2653\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrint params/results of imports by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2654\"\u003ebytecodealliance/wasm-tools#2654\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-mutate: add global mutator by \u003ca href=\"https://github.com/GtechGovind\"\u003e\u003ccode\u003e@​GtechGovind\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2641\"\u003ebytecodealliance/wasm-tools#2641\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-encoder: add \u003ccode\u003eComponentBuilder::start()\u003c/code\u003e by \u003ca href=\"https://github.com/zacharywhitley\"\u003e\u003ccode\u003e@​zacharywhitley\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2657\"\u003ebytecodealliance/wasm-tools#2657\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: validate linker intrinsic function signatures by \u003ca href=\"https://github.com/RanaPriyansh\"\u003e\u003ccode\u003e@​RanaPriyansh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2646\"\u003ebytecodealliance/wasm-tools#2646\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix handling of names of fields in the text format by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2651\"\u003ebytecodealliance/wasm-tools#2651\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't emit a second \u003ccode\u003ename\u003c/code\u003e section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2659\"\u003ebytecodealliance/wasm-tools#2659\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate extended-name-section proposal implementation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2658\"\u003ebytecodealliance/wasm-tools#2658\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplement canonical interface names in wit-component by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2622\"\u003ebytecodealliance/wasm-tools#2622\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-mutate: add export mutator by \u003ca href=\"https://github.com/GtechGovind\"\u003e\u003ccode\u003e@​GtechGovind\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2639\"\u003ebytecodealliance/wasm-tools#2639\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasmparser: Increase \u003ccode\u003eMAX_WASM_INSTANCES\u003c/code\u003e to \u003ccode\u003e4_096\u003c/code\u003e by \u003ca href=\"https://github.com/noobHappylife\"\u003e\u003ccode\u003e@​noobHappylife\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2661\"\u003ebytecodealliance/wasm-tools#2661\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-encoder: add ComponentBuilder::instantiate_exports by \u003ca href=\"https://github.com/zacharywhitley\"\u003e\u003ccode\u003e@​zacharywhitley\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2655\"\u003ebytecodealliance/wasm-tools#2655\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTry out dependabot on this repo by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2662\"\u003ebytecodealliance/wasm-tools#2662\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix parsing empty compact import encoding groups by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2664\"\u003ebytecodealliance/wasm-tools#2664\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix an invalid mutation with a tag section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2665\"\u003ebytecodealliance/wasm-tools#2665\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport multiple supertypes in everything but validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2652\"\u003ebytecodealliance/wasm-tools#2652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate spec test suite submodule by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2667\"\u003ebytecodealliance/wasm-tools#2667\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplement validation of custom sections by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2668\"\u003ebytecodealliance/wasm-tools#2668\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove unused dependencies from workspace by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2669\"\u003ebytecodealliance/wasm-tools#2669\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add \u003ccode\u003e{stream,future}.forward\u003c/code\u003e canon builtins by \u003ca href=\"https://github.com/rvolosatovs\"\u003e\u003ccode\u003e@​rvolosatovs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2614\"\u003ebytecodealliance/wasm-tools#2614\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ewasm-tools component new\u003c/code\u003e for page-size-1 memory by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2666\"\u003ebytecodealliance/wasm-tools#2666\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd getter and setter support by \u003ca href=\"https://github.com/bvisness\"\u003e\u003ccode\u003e@​bvisness\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2660\"\u003ebytecodealliance/wasm-tools#2660\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRename seq_cst/acq_rel in the text format by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2673\"\u003ebytecodealliance/wasm-tools#2673\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(canonical-names): disallow encoding multiple exports with the same name by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2672\"\u003ebytecodealliance/wasm-tools#2672\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/bytecodealliance/wasm-tools/commit/5793351e3190a178d0dbdd509d183b6da896090a\"\u003e\u003ccode\u003e5793351\u003c/code\u003e\u003c/a\u003e Release wasm-tools 1.261.0 (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2738\"\u003e#2738\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/de1811cf001af4deb0a15288435340bbb4c711fa\"\u003e\u003ccode\u003ede1811c\u003c/code\u003e\u003c/a\u003e fix incorrect async callback validation (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2742\"\u003e#2742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/45eb6b6481b7699a42d4f901593b73e3155194fc\"\u003e\u003ccode\u003e45eb6b6\u003c/code\u003e\u003c/a\u003e Fix validation of tags in components (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2741\"\u003e#2741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/ade02824ce01545c0b2a48451e7b362f3f7074e7\"\u003e\u003ccode\u003eade0282\u003c/code\u003e\u003c/a\u003e Limit total components/modules in validation (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2730\"\u003e#2730\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d129fe42f9764d35c3a9d5dacac1f6fd1d3f1ea2\"\u003e\u003ccode\u003ed129fe4\u003c/code\u003e\u003c/a\u003e Fix disallowing borrows in streams/futures/values (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2727\"\u003e#2727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d4903a18e540cf1cc747a8e3a2aebcac7ad602f5\"\u003e\u003ccode\u003ed4903a1\u003c/code\u003e\u003c/a\u003e Tighten some feature gates in \u003ccode\u003ewasmparser\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2721\"\u003e#2721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/7385c089cecb0f6a2fe9f95d6a302cf0100bcfc1\"\u003e\u003ccode\u003e7385c08\u003c/code\u003e\u003c/a\u003e Fix some custom-descriptors validation of dead code (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2734\"\u003e#2734\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/65d480abad54094ab39242fa5f35ee2c54f87f10\"\u003e\u003ccode\u003e65d480a\u003c/code\u003e\u003c/a\u003e Fix validation of the key types of \u003ccode\u003emap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2725\"\u003e#2725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d2d492d4793143bd2cc651f4e9a150c6cb8ce197\"\u003e\u003ccode\u003ed2d492d\u003c/code\u003e\u003c/a\u003e Reject truncated nested modules and components (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2724\"\u003e#2724\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/ccacc243a0047c2c4d34c17559a76a446f4fdc83\"\u003e\u003ccode\u003eccacc24\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eread_var_s33\u003c/code\u003e and handling in component defined types (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2723\"\u003e#2723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/compare/v1.259.0...v1.261.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/registrystack/registry-stack/pull/1907","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/registrystack%2Fregistry-stack/issues/1907","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1907/packages"},{"uuid":"5723678210","node_id":"PR_kwDOCGC1nM8AAAABG2e3cw","number":89,"state":"open","title":"Bump the cargo group across 1 directory with 9 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-06T05:55:17.000Z","updated_at":"2026-10-06T05:55:22.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"cargo","update_count":9,"packages":[{"name":"indexmap","old_version":"2.14.0","new_version":"2.14.2","repository_url":"https://github.com/indexmap-rs/indexmap"},{"name":"num-bigint","old_version":"0.4.6","new_version":"0.5.1","repository_url":"https://github.com/rust-num/num-bigint"},{"name":"smallvec","old_version":"1.15.2","new_version":"1.16.2","repository_url":"https://github.com/servo/rust-smallvec"},{"name":"thiserror","old_version":"2.0.20","new_version":"2.0.21","repository_url":"https://github.com/dtolnay/thiserror"},{"name":"rand","old_version":"0.10.2","new_version":"0.10.3","repository_url":"https://github.com/rust-random/rand"},{"name":"uuid","old_version":"1.24.1","new_version":"1.27.0","repository_url":"https://github.com/uuid-rs/uuid"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"clap","old_version":"4.6.6","new_version":"4.6.7","repository_url":"https://github.com/clap-rs/clap"},{"name":"lazy_static","old_version":"1.5.0","new_version":"1.5.1","repository_url":"https://github.com/rust-lang-nursery/lazy-static.rs"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the cargo group with 9 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [indexmap](https://github.com/indexmap-rs/indexmap) | `2.14.0` | `2.14.2` |\n| [num-bigint](https://github.com/rust-num/num-bigint) | `0.4.6` | `0.5.1` |\n| [smallvec](https://github.com/servo/rust-smallvec) | `1.15.2` | `1.16.2` |\n| [thiserror](https://github.com/dtolnay/thiserror) | `2.0.20` | `2.0.21` |\n| [rand](https://github.com/rust-random/rand) | `0.10.2` | `0.10.3` |\n| [uuid](https://github.com/uuid-rs/uuid) | `1.24.1` | `1.27.0` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [clap](https://github.com/clap-rs/clap) | `4.6.6` | `4.6.7` |\n| [lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs) | `1.5.0` | `1.5.1` |\n\n\nUpdates `indexmap` from 2.14.0 to 2.14.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/indexmap-rs/indexmap/blob/main/RELEASES.md\"\u003eindexmap's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.14.2 (2026-09-04)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix item hygiene in map and set macros. Previously, an internal \u003ccode\u003econst CAP\u003c/code\u003e\ncould shadow the same name in the caller's namespace.\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003econst\u003c/code\u003e initialization of empty \u003ccode\u003eindexmap_with_default!\u003c/code\u003e and\n\u003ccode\u003eindexset_with_default!\u003c/code\u003e. The hasher may also be omitted if it's inferrable.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.14.1 (2026-08-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify comparisons where \u003ccode\u003eEquivalent\u003c/code\u003e isn't needed (\u003ccode\u003eQ = K\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eUnify index assertions for bounds checks.\u003c/li\u003e\n\u003cli\u003eFix (or \u003ccode\u003eexpect\u003c/code\u003e) clippy lints.\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/indexmap-rs/indexmap/commit/41a870887c4c77adf665886e63df08f406bfe37a\"\u003e\u003ccode\u003e41a8708\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/indexmap-rs/indexmap/issues/450\"\u003e#450\u003c/a\u003e from cuviper/macros\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/0fb7b5c813c94dcb16f220d249e42a7b9e4ea44d\"\u003e\u003ccode\u003e0fb7b5c\u003c/code\u003e\u003c/a\u003e Release 2.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/55e6b28278f242b4d4190a14b6e86c09580dd75a\"\u003e\u003ccode\u003e55e6b28\u003c/code\u003e\u003c/a\u003e Improve the empty macro cases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/c067355e1ca5ec39348f42dcee582d4f222c3295\"\u003e\u003ccode\u003ec067355\u003c/code\u003e\u003c/a\u003e Fix item hygiene in user macros\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/fdf7e1738b3b53869bdc15d666f9b81961041825\"\u003e\u003ccode\u003efdf7e17\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/indexmap-rs/indexmap/issues/449\"\u003e#449\u003c/a\u003e from cuviper/release-2.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/ada540e17cc7d8f38359f7d83c225e38f367c86b\"\u003e\u003ccode\u003eada540e\u003c/code\u003e\u003c/a\u003e Release 2.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/af93b43ecd62d28deb59a6ac23f98bd115475eaf\"\u003e\u003ccode\u003eaf93b43\u003c/code\u003e\u003c/a\u003e expect clippy::redundant_slicing in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/c95da18c97d2742fe8731f36e81c1d04f0620c6a\"\u003e\u003ccode\u003ec95da18\u003c/code\u003e\u003c/a\u003e fix clippy::derivable_impls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/21963654e41f86f396a2ba6d9582ccd8eb7df52c\"\u003e\u003ccode\u003e2196365\u003c/code\u003e\u003c/a\u003e fix clippy::useless_vec (and more) in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/1c2be7b00c5bb61f654210355d1e9f0d9be03956\"\u003e\u003ccode\u003e1c2be7b\u003c/code\u003e\u003c/a\u003e use inherent usize::MAX\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/indexmap-rs/indexmap/compare/2.14.0...2.14.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `num-bigint` from 0.4.6 to 0.5.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-num/num-bigint/blob/main/RELEASES.md\"\u003enum-bigint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease 0.5.1 (2026-07-04)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/348\"\u003eFixed a regression in the B-Z division algorithm.\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eContributors\u003c/strong\u003e: \u003ca href=\"https://github.com/cuviper\"\u003e\u003ccode\u003e@​cuviper\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003eRelease 0.5.0 (2026-07-02)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/338\"\u003eUpgrade to \u003ccode\u003erand\u003c/code\u003e v0.10 and/or v0.9, and split \u003ccode\u003erand_core\u003c/code\u003e\u003c/a\u003e.\n\u003cul\u003e\n\u003cli\u003eThe former \u003ccode\u003erand\u003c/code\u003e feature is now split into multiple features, \u003ccode\u003erand_0_9\u003c/code\u003e,\n\u003ccode\u003erand_core_0_9\u003c/code\u003e, \u003ccode\u003erand_0_10\u003c/code\u003e, and \u003ccode\u003erand_core_0_10\u003c/code\u003e, depending on the\nversion and feature set you need.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003eRandBigInt\u003c/code\u003e extension trait is now split into \u003ccode\u003eBigRng09\u003c/code\u003e and\n\u003ccode\u003eBigRng010\u003c/code\u003e for each version.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003egen_*\u003c/code\u003e methods are deprecated in favor of new \u003ccode\u003erandom_*\u003c/code\u003e methods.\u003c/li\u003e\n\u003cli\u003eThis is also a \u003ca href=\"https://rust-random.github.io/book/crate-reprod.html#api-breaking-value-breaking-and-semver\"\u003evalue-breaking\u003c/a\u003e release, as \u003ccode\u003erand\u003c/code\u003e defines it.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eContributors\u003c/strong\u003e: \u003ca href=\"https://github.com/bionicles\"\u003e\u003ccode\u003e@​bionicles\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cuviper\"\u003e\u003ccode\u003e@​cuviper\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/divergentdave\"\u003e\u003ccode\u003e@​divergentdave\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003eRelease 0.4.8 (2026-07-04)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/349\"\u003eFixed a regression in the B-Z division algorithm.\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eContributors\u003c/strong\u003e: \u003ca href=\"https://github.com/cuviper\"\u003e\u003ccode\u003e@​cuviper\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003eRelease 0.4.7 (2026-07-02)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/307\"\u003eInline single-digit values.\u003c/a\u003e This reduces heap allocations, and\nalso enables \u003ccode\u003econst ONE\u003c/code\u003e, \u003ccode\u003econst NEG_ONE\u003c/code\u003e, and \u003ccode\u003econst fn new_const\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/316\"\u003eUse divide and conquer in \u003ccode\u003eto_radix_digits\u003c/code\u003e,\u003c/a\u003e also implementing\nthe Burnikel-Ziegler algorithm to speed up large divisions in general.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/330\"\u003eImplement \u003ccode\u003eLowerBounded\u003c/code\u003e for \u003ccode\u003eBigUint\u003c/code\u003e.\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eContributors\u003c/strong\u003e: \u003ca href=\"https://github.com/cp289\"\u003e\u003ccode\u003e@​cp289\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cuviper\"\u003e\u003ccode\u003e@​cuviper\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/hkalbasi\"\u003e\u003ccode\u003e@​hkalbasi\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mikem8891\"\u003e\u003ccode\u003e@​mikem8891\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/pRizz\"\u003e\u003ccode\u003e@​pRizz\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/tyilo\"\u003e\u003ccode\u003e@​tyilo\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/xtqqczze\"\u003e\u003ccode\u003e@​xtqqczze\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/33c59ba44b7bdb09975b38a321b1b88c6a444005\"\u003e\u003ccode\u003e33c59ba\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-num/num-bigint/issues/348\"\u003e#348\u003c/a\u003e from cuviper/bz-alg2-step3b\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/38b68f66f4ac0f6b611edb984d05d0104cad5c67\"\u003e\u003ccode\u003e38b68f6\u003c/code\u003e\u003c/a\u003e Release 0.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/f4a43f56eb38f6b2ea52b21b47e5392920fe158b\"\u003e\u003ccode\u003ef4a43f5\u003c/code\u003e\u003c/a\u003e Fix the missing part of the Burnikel-Ziegler algorithm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/ebfd89a0ef7b3616e19c5cba11a0469109488594\"\u003e\u003ccode\u003eebfd89a\u003c/code\u003e\u003c/a\u003e Add failing tests for a bug in B-Z division\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/0ab95df78c44aeb9036b3b4f06ff39a740230924\"\u003e\u003ccode\u003e0ab95df\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-num/num-bigint/issues/338\"\u003e#338\u003c/a\u003e from cuviper/rand-0.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/33d6998b40cad9787e2179ddfecf8eab655d759d\"\u003e\u003ccode\u003e33d6998\u003c/code\u003e\u003c/a\u003e Release 0.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/84d05b791d0b748b5bac9c7766109853949e5034\"\u003e\u003ccode\u003e84d05b7\u003c/code\u003e\u003c/a\u003e Clean up manifests of ci crates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/f8daf564cd3d0888c3aeca6e4a0e63cb3c69a83d\"\u003e\u003ccode\u003ef8daf56\u003c/code\u003e\u003c/a\u003e Allow \u003ccode\u003eclippy::duplicate_mod\u003c/code\u003e where intended\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/022310ab277684b9e7fe586304d0dfaa11cb73fe\"\u003e\u003ccode\u003e022310a\u003c/code\u003e\u003c/a\u003e Rearrange the \u003ccode\u003erand\u003c/code\u003e features to support both 0.9 and 0.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/537a0362554ae00a97dbe4af58770dfcd0e0a1ca\"\u003e\u003ccode\u003e537a036\u003c/code\u003e\u003c/a\u003e ci: use the fallback resolver for deps\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-num/num-bigint/compare/num-bigint-0.4.6...num-bigint-0.5.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `smallvec` from 1.15.2 to 1.16.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/servo/rust-smallvec/releases\"\u003esmallvec's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.16.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v2’s retain implementation to v1 by \u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/596\"\u003eservo/rust-smallvec#596\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix element ownership tracking with may_dangle by \u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/594\"\u003eservo/rust-smallvec#594\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Cargo manual_readme warning by \u003ca href=\"https://github.com/Rayan-and-beyond\"\u003e\u003ccode\u003e@​Rayan-and-beyond\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/608\"\u003eservo/rust-smallvec#608\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump version by \u003ca href=\"https://github.com/alejandro-vaz\"\u003e\u003ccode\u003e@​alejandro-vaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/617\"\u003eservo/rust-smallvec#617\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/Rayan-and-beyond\"\u003e\u003ccode\u003e@​Rayan-and-beyond\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/608\"\u003eservo/rust-smallvec#608\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/servo/rust-smallvec/compare/v1.16.1...v1.16.2\"\u003ehttps://github.com/servo/rust-smallvec/compare/v1.16.1...v1.16.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.16.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up push by expanding triple_mut by \u003ca href=\"https://github.com/bolshoytoster\"\u003e\u003ccode\u003e@​bolshoytoster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/557\"\u003eservo/rust-smallvec#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump version to 1.16.1 by \u003ca href=\"https://github.com/ryux1\"\u003e\u003ccode\u003e@​ryux1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/585\"\u003eservo/rust-smallvec#585\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: doc warning by \u003ca href=\"https://github.com/alejandro-vaz\"\u003e\u003ccode\u003e@​alejandro-vaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/582\"\u003eservo/rust-smallvec#582\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: cargo warnings by \u003ca href=\"https://github.com/alejandro-vaz\"\u003e\u003ccode\u003e@​alejandro-vaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/581\"\u003eservo/rust-smallvec#581\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/ryux1\"\u003e\u003ccode\u003e@​ryux1\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/585\"\u003eservo/rust-smallvec#585\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/servo/rust-smallvec/compare/v1.16.0...v1.16.1\"\u003ehttps://github.com/servo/rust-smallvec/compare/v1.16.0...v1.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.16.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eInclude debug_metadata/*.natvis in the published crate to fix debugger_visualizer/docs.rs build by \u003ca href=\"https://github.com/teddytennant\"\u003e\u003ccode\u003e@​teddytennant\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/417\"\u003eservo/rust-smallvec#417\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: removed debugger visualizer + tests by \u003ca href=\"https://github.com/alejandro-vaz\"\u003e\u003ccode\u003e@​alejandro-vaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/420\"\u003eservo/rust-smallvec#420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: added style check to CI \u0026amp;\u0026amp; rustfmt.toml by \u003ca href=\"https://github.com/alejandro-vaz\"\u003e\u003ccode\u003e@​alejandro-vaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/436\"\u003eservo/rust-smallvec#436\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/teddytennant\"\u003e\u003ccode\u003e@​teddytennant\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/417\"\u003eservo/rust-smallvec#417\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/servo/rust-smallvec/compare/v1.15.2...v1.16.0\"\u003ehttps://github.com/servo/rust-smallvec/compare/v1.15.2...v1.16.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/ccf5fc71044d491c46a3d79e7ed53948e6da1590\"\u003e\u003ccode\u003eccf5fc7\u003c/code\u003e\u003c/a\u003e chore: bump version (\u003ca href=\"https://redirect.github.com/servo/rust-smallvec/issues/617\"\u003e#617\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/af207ccb68496e112f3d7366a66c07c6107ef04a\"\u003e\u003ccode\u003eaf207cc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/issues/608\"\u003e#608\u003c/a\u003e from Rayan-and-beyond/fix/manual-readme-warning-606\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/cda4b73506acb35823a8147ef4397375f7063b82\"\u003e\u003ccode\u003ecda4b73\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/issues/594\"\u003e#594\u003c/a\u003e from astral-sh/charlie/codex-fix-may-dangle\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/d0556cb8e33b02b434074896f753f5f03b20c278\"\u003e\u003ccode\u003ed0556cb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/issues/596\"\u003e#596\u003c/a\u003e from astral-sh/charlie/codex-v1-compact\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/f73914cf4b523741b9af5d13a98e77d59c54bc13\"\u003e\u003ccode\u003ef73914c\u003c/code\u003e\u003c/a\u003e Flatten retain tests into the unit test module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/954d599e41b074282857e97c44211f0f797e6597\"\u003e\u003ccode\u003e954d599\u003c/code\u003e\u003c/a\u003e Move retain tests into the unit test module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/8d936338dbcefa380b4dd596379b57582ed5d616\"\u003e\u003ccode\u003e8d93633\u003c/code\u003e\u003c/a\u003e Remove added retain benchmark harness\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/88c6bfabd610f34f4f1f9d530f58fb8a74b9a807\"\u003e\u003ccode\u003e88c6bfa\u003c/code\u003e\u003c/a\u003e Limit compaction optimization to retain\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/b9ef17da33c19cb1d11190e0c7c29e459297cd6a\"\u003e\u003ccode\u003eb9ef17d\u003c/code\u003e\u003c/a\u003e Fix element ownership tracking with may_dangle\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/42029c27c9243d8a178a0d64464185547b3a7d6f\"\u003e\u003ccode\u003e42029c2\u003c/code\u003e\u003c/a\u003e Compact retained elements directly in retain and dedup_by\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/servo/rust-smallvec/compare/v1.15.2...v1.16.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `thiserror` from 2.0.20 to 2.0.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/thiserror/releases\"\u003ethiserror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix parsing of generic unit variants in display expressions (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\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/dtolnay/thiserror/commit/b1827ee06f81a7d7f954e676771e19a97f9f8e3b\"\u003e\u003ccode\u003eb1827ee\u003c/code\u003e\u003c/a\u003e Release 2.0.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/58037b575a2a5543d0d54a49360554325b49f55a\"\u003e\u003ccode\u003e58037b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e from dtolnay/turbofish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/f82a0cf8f06c71263c2caa26e759f337d2778153\"\u003e\u003ccode\u003ef82a0cf\u003c/code\u003e\u003c/a\u003e Keep track of nested turbofish depth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72ea49262d6412ccbc08f1696dda8626409e657d\"\u003e\u003ccode\u003e72ea492\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72eea0d4ddb17ff9fa873aa74469de850021b22e\"\u003e\u003ccode\u003e72eea0d\u003c/code\u003e\u003c/a\u003e Resolve io_other_error clippy lint in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/07f09a2ec934df58508ce4fa5e7fbf27cca552c2\"\u003e\u003ccode\u003e07f09a2\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.74\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/2715388e8cc5787b3643251f7a7a637e89376688\"\u003e\u003ccode\u003e2715388\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/5a306c7d0a8588caaaaa6a7567aeb25c1c10719b\"\u003e\u003ccode\u003e5a306c7\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/ef9383b37d7c96b01e10df35d3e9e313c7b98b5a\"\u003e\u003ccode\u003eef9383b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-08-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/8336b8407fbfe69177c504cdbc379db20cf6f131\"\u003e\u003ccode\u003e8336b84\u003c/code\u003e\u003c/a\u003e Update ui tests for version 2.0.20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dtolnay/thiserror/compare/2.0.20...2.0.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rand` from 0.10.2 to 0.10.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-random/rand/blob/master/CHANGELOG.md\"\u003erand's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.10.3] — 2026-09-20\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eWeightedIndex\u003c/code\u003e panic when the sum of float weights is infinite; return \u003ccode\u003eError::Overflow\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1808\"\u003e#1808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix spurious \u003ccode\u003eError::NonFinite\u003c/code\u003e from \u003ccode\u003eUniform::new_inclusive\u003c/code\u003e on large finite float ranges such as \u003ccode\u003e0.0..=f64::MAX\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible panic due to sampling a deserialized \u003ccode\u003eUniform\u0026lt;char\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReport exact remaining lengths from \u003ccode\u003eWeightedIndex::weights()\u003c/code\u003e and reduce overhead when reading weights (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1808\"\u003e#1808\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1808\"\u003erust-random/rand#1808\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1821\"\u003erust-random/rand#1821\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1831\"\u003erust-random/rand#1831\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1838\"\u003erust-random/rand#1838\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/9e7d328f60d6372ae22927f37d1a816fc980f25e\"\u003e\u003ccode\u003e9e7d328\u003c/code\u003e\u003c/a\u003e Prepare rand 0.10.3 (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1840\"\u003e#1840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/f73ce74d4ac8f47259e871e22939c6c52e17befe\"\u003e\u003ccode\u003ef73ce74\u003c/code\u003e\u003c/a\u003e Optimize WeightedIndex weight lookup and iteration (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/ef9e044b6b1f5fe541516d4b622c9c2d9932d789\"\u003e\u003ccode\u003eef9e044\u003c/code\u003e\u003c/a\u003e Avoid panic from deserialized \u003ccode\u003eUniform\\\u0026lt;char\u0026gt;\u003c/code\u003e where \u003ccode\u003erange == 0\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/c994eb1e40ab8cc9a929cfe11b345f7296bca393\"\u003e\u003ccode\u003ec994eb1\u003c/code\u003e\u003c/a\u003e docs: fix angle unit in quick start example (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1839\"\u003e#1839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/33dea4fcd044c3425fd8f35ffc9d203c652c3d73\"\u003e\u003ccode\u003e33dea4f\u003c/code\u003e\u003c/a\u003e Test that WeightedIndex rejects INFINITY with Error::Overflow (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1822\"\u003e#1822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/94c9078267aa9ea4e9ad61bd552b35245c995830\"\u003e\u003ccode\u003e94c9078\u003c/code\u003e\u003c/a\u003e Fix Uniform::new_inclusive overflow on large finite float ranges (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/bb1262f703ca04e4ce56be78e1dc4e204cd6a998\"\u003e\u003ccode\u003ebb1262f\u003c/code\u003e\u003c/a\u003e Use Xoshiro256PlusPlus in examples/rayon-monte-carlo.rs (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1805\"\u003e#1805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/521fab6a1bcf349760d2581c2143fbc1aafe8798\"\u003e\u003ccode\u003e521fab6\u003c/code\u003e\u003c/a\u003e Stop pinning dependencies (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1820\"\u003e#1820\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/3f7c4335fd6ba118aaed1ab59b1964808a955d4d\"\u003e\u003ccode\u003e3f7c433\u003c/code\u003e\u003c/a\u003e Stop pinning dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/cf4f73e3953ffcf97f575317a07f0fd5983bfe9e\"\u003e\u003ccode\u003ecf4f73e\u003c/code\u003e\u003c/a\u003e sample_efraimidis_spirakis: error on more than amount non-finite weights (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1814\"\u003e#1814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-random/rand/compare/0.10.2...0.10.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `uuid` from 1.24.1 to 1.27.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uuid-rs/uuid/releases\"\u003euuid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.27.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAccept case-insensitive urn:uuid: prefixes when parsing by \u003ca href=\"https://github.com/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix ordering of V7 UUIDs created by earlier seconds with later subsec nanos by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/915\"\u003euuid-rs/uuid#915\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.27.0 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/917\"\u003euuid-rs/uuid#917\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/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\"\u003ehttps://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.26.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSeat the v7 counter below the version nibble by \u003ca href=\"https://github.com/lenamonj\"\u003e\u003ccode\u003e@​lenamonj\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/907\"\u003euuid-rs/uuid#907\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't panic in overflowing Timestamp to SystemTime conversion by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/909\"\u003euuid-rs/uuid#909\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.26.1 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/910\"\u003euuid-rs/uuid#910\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/lenamonj\"\u003e\u003ccode\u003e@​lenamonj\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/907\"\u003euuid-rs/uuid#907\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.0...v1.26.1\"\u003ehttps://github.com/uuid-rs/uuid/compare/v1.26.0...v1.26.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.26.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ContextV7::with_additional_precision_bits by \u003ca href=\"https://github.com/ChrisJr404\"\u003e\u003ccode\u003e@​ChrisJr404\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/904\"\u003euuid-rs/uuid#904\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.26.0 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/905\"\u003euuid-rs/uuid#905\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/1.25.0...v1.26.0\"\u003ehttps://github.com/uuid-rs/uuid/compare/1.25.0...v1.26.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.25.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a serde::bytes module that encodes a Uuid as a byte string by \u003ca href=\"https://github.com/ChrisJr404\"\u003e\u003ccode\u003e@​ChrisJr404\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/902\"\u003euuid-rs/uuid#902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.25.0 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/903\"\u003euuid-rs/uuid#903\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/ChrisJr404\"\u003e\u003ccode\u003e@​ChrisJr404\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/902\"\u003euuid-rs/uuid#902\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.24.1...1.25.0\"\u003ehttps://github.com/uuid-rs/uuid/compare/v1.24.1...1.25.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/b62154e8be41ce42127cba08ee5e5cef3e2ea971\"\u003e\u003ccode\u003eb62154e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/917\"\u003e#917\u003c/a\u003e from uuid-rs/cargo/v1.27.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/ffd8ec55f20006fa2b5978cc03a1e671835040e9\"\u003e\u003ccode\u003effd8ec5\u003c/code\u003e\u003c/a\u003e prepare for 1.27.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4b6c10f9dd9cf37809460859ab88071d43703398\"\u003e\u003ccode\u003e4b6c10f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/915\"\u003e#915\u003c/a\u003e from uuid-rs/fix/v7-ordering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a1aa126f97cdc8d9c5c25d56efa0e7bcb9ab0514\"\u003e\u003ccode\u003ea1aa126\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/912\"\u003e#912\u003c/a\u003e from jaideeppyne/fix/urn-prefix-case-insensitive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4639d67b0f117a94cf0add01e4c68e674691b49c\"\u003e\u003ccode\u003e4639d67\u003c/code\u003e\u003c/a\u003e fix ordering of V7 UUIDs created by earlier seconds with later subsec nanos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/272370344a977ee0641ffa4d01b7ad3ca0eda687\"\u003e\u003ccode\u003e2723703\u003c/code\u003e\u003c/a\u003e bump MSRV to 1.89.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a3e64faaf7fdf583260fc18a594b099677855eea\"\u003e\u003ccode\u003ea3e64fa\u003c/code\u003e\u003c/a\u003e refactor: simplify URN prefix parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/5055fd41c7f33c16a1eac3198eac6224ec18b61d\"\u003e\u003ccode\u003e5055fd4\u003c/code\u003e\u003c/a\u003e refactor: inline case-insensitive URN prefix checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/cb8b1d51421df4828c11ebca6b54c5986caafef6\"\u003e\u003ccode\u003ecb8b1d5\u003c/code\u003e\u003c/a\u003e refactor: simplify case-insensitive URN parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/285967db45b800ffda5032d12c32e3d4e2620902\"\u003e\u003ccode\u003e285967d\u003c/code\u003e\u003c/a\u003e Accept case-insensitive urn:uuid: prefixes when parsing\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.24.1...v1.27.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `clap` from 4.6.6 to 4.6.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/clap-rs/clap/releases\"\u003eclap's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.6.7\u003c/h2\u003e\n\u003ch2\u003e[4.6.7] - 2026-09-14\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Add \u003ccode\u003e#[command(defer = \u0026lt;bool\u0026gt;)]\u003c/code\u003e attribute to opt-in to lazy initialisation of subcommands\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/clap-rs/clap/blob/main/CHANGELOG.md\"\u003eclap's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.6.7] - 2026-09-14\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Add \u003ccode\u003e#[command(defer = \u0026lt;bool\u0026gt;)]\u003c/code\u003e attribute to opt-in to lazy initialisation of subcommands\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/clap-rs/clap/commit/d3e59a9ab214910b9dad02921b7ef42c6400de9b\"\u003e\u003ccode\u003ed3e59a9\u003c/code\u003e\u003c/a\u003e chore: Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/d997f878c484e02b2935d32a7b67afe990e91227\"\u003e\u003ccode\u003ed997f87\u003c/code\u003e\u003c/a\u003e docs: Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/fb6058cc38cf6f4b07b8db89c850fc80e059e222\"\u003e\u003ccode\u003efb6058c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6409\"\u003e#6409\u003c/a\u003e from heaths/pwsh-support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/2310870f7a9fe4c39f5bb5620261a06ac9aaa0b1\"\u003e\u003ccode\u003e2310870\u003c/code\u003e\u003c/a\u003e test(complete): Add tests for completer_for_path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/5967c17393a09f90112cdc5b2c20a1383f0bd8e4\"\u003e\u003ccode\u003e5967c17\u003c/code\u003e\u003c/a\u003e refactor(complete): Move shell detection to Shells\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/594602bb29f374e49da5029df63e5c740c723ad0\"\u003e\u003ccode\u003e594602b\u003c/code\u003e\u003c/a\u003e fix(complete): Detect pwsh for PowerShell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/3a4f2d031b5110aaaac40f1cb1d6c0b8ff619df8\"\u003e\u003ccode\u003e3a4f2d0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6427\"\u003e#6427\u003c/a\u003e from clap-rs/renovate/shlex-2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/67ebaed4ac95a83d5d7cc22d64ee0fc162ae1db3\"\u003e\u003ccode\u003e67ebaed\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6426\"\u003e#6426\u003c/a\u003e from clap-rs/renovate/actions-checkout-7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/c968b136d0e6f560c08b06a844a20f2798a00096\"\u003e\u003ccode\u003ec968b13\u003c/code\u003e\u003c/a\u003e chore(deps): Update Rust crate shlex to v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/8f247cbf58c582a755ee4dbe62a2390d93b9f8eb\"\u003e\u003ccode\u003e8f247cb\u003c/code\u003e\u003c/a\u003e chore(deps): Update actions/checkout action to v7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/clap-rs/clap/compare/clap_complete-v4.6.6...clap_complete-v4.6.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lazy_static` from 1.5.0 to 1.5.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rust-lang-nursery/lazy-static.rs/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/1ucian0/qiskit-terra/pull/89","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/1ucian0%2Fqiskit-terra/issues/89","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/89/packages"},{"uuid":"5721666967","node_id":"PR_kwDOOwvhL88AAAABG05bwg","number":263,"state":"open","title":"chore(deps): bump the cargo group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-06T01:55:20.000Z","updated_at":"2026-10-06T10:32:00.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"cargo","update_count":3,"packages":[{"name":"uuid","old_version":"1.26.1","new_version":"1.27.0","repository_url":"https://github.com/uuid-rs/uuid"},{"name":"rand","old_version":"0.9.4","new_version":"0.10.3","repository_url":"https://github.com/rust-random/rand"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the cargo group with 3 updates in the / directory: [uuid](https://github.com/uuid-rs/uuid), [rand](https://github.com/rust-random/rand) and [pyo3](https://github.com/pyo3/pyo3).\n\nUpdates `uuid` from 1.26.1 to 1.27.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uuid-rs/uuid/releases\"\u003euuid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.27.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAccept case-insensitive urn:uuid: prefixes when parsing by \u003ca href=\"https://github.com/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix ordering of V7 UUIDs created by earlier seconds with later subsec nanos by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/915\"\u003euuid-rs/uuid#915\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.27.0 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/917\"\u003euuid-rs/uuid#917\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/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\"\u003ehttps://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/b62154e8be41ce42127cba08ee5e5cef3e2ea971\"\u003e\u003ccode\u003eb62154e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/917\"\u003e#917\u003c/a\u003e from uuid-rs/cargo/v1.27.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/ffd8ec55f20006fa2b5978cc03a1e671835040e9\"\u003e\u003ccode\u003effd8ec5\u003c/code\u003e\u003c/a\u003e prepare for 1.27.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4b6c10f9dd9cf37809460859ab88071d43703398\"\u003e\u003ccode\u003e4b6c10f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/915\"\u003e#915\u003c/a\u003e from uuid-rs/fix/v7-ordering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a1aa126f97cdc8d9c5c25d56efa0e7bcb9ab0514\"\u003e\u003ccode\u003ea1aa126\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/912\"\u003e#912\u003c/a\u003e from jaideeppyne/fix/urn-prefix-case-insensitive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4639d67b0f117a94cf0add01e4c68e674691b49c\"\u003e\u003ccode\u003e4639d67\u003c/code\u003e\u003c/a\u003e fix ordering of V7 UUIDs created by earlier seconds with later subsec nanos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/272370344a977ee0641ffa4d01b7ad3ca0eda687\"\u003e\u003ccode\u003e2723703\u003c/code\u003e\u003c/a\u003e bump MSRV to 1.89.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a3e64faaf7fdf583260fc18a594b099677855eea\"\u003e\u003ccode\u003ea3e64fa\u003c/code\u003e\u003c/a\u003e refactor: simplify URN prefix parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/5055fd41c7f33c16a1eac3198eac6224ec18b61d\"\u003e\u003ccode\u003e5055fd4\u003c/code\u003e\u003c/a\u003e refactor: inline case-insensitive URN prefix checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/cb8b1d51421df4828c11ebca6b54c5986caafef6\"\u003e\u003ccode\u003ecb8b1d5\u003c/code\u003e\u003c/a\u003e refactor: simplify case-insensitive URN parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/285967db45b800ffda5032d12c32e3d4e2620902\"\u003e\u003ccode\u003e285967d\u003c/code\u003e\u003c/a\u003e Accept case-insensitive urn:uuid: prefixes when parsing\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rand` from 0.9.4 to 0.10.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-random/rand/blob/master/CHANGELOG.md\"\u003erand's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.10.3] — 2026-09-20\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eWeightedIndex\u003c/code\u003e panic when the sum of float weights is infinite; return \u003ccode\u003eError::Overflow\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1808\"\u003e#1808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix spurious \u003ccode\u003eError::NonFinite\u003c/code\u003e from \u003ccode\u003eUniform::new_inclusive\u003c/code\u003e on large finite float ranges such as \u003ccode\u003e0.0..=f64::MAX\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible panic due to sampling a deserialized \u003ccode\u003eUniform\u0026lt;char\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReport exact remaining lengths from \u003ccode\u003eWeightedIndex::weights()\u003c/code\u003e and reduce overhead when reading weights (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1808\"\u003e#1808\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1808\"\u003erust-random/rand#1808\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1821\"\u003erust-random/rand#1821\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1831\"\u003erust-random/rand#1831\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1838\"\u003erust-random/rand#1838\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e[0.10.2] — 2026-07-02\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix possible memory safety violation due to deserialization of \u003ccode\u003eUniformChar\u003c/code\u003e from bad source (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1790\"\u003e#1790\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument required output order of fn \u003ccode\u003epartial_shuffle\u003c/code\u003e and apply \u003ccode\u003e#[must_use]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid usage of \u003ccode\u003eunsafe\u003c/code\u003e in contexts where non-local memory corruption could invalidate contract (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1791\"\u003e#1791\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1769\"\u003e#1769\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1769\"\u003erust-random/rand#1769\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1790\"\u003e#1790\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1790\"\u003erust-random/rand#1790\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1791\"\u003e#1791\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1791\"\u003erust-random/rand#1791\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e[0.10.1] — 2026-02-11\u003c/h2\u003e\n\u003cp\u003eThis release includes a fix for a soundness bug; see \u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1763\"\u003e#1763\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument panic behavior of \u003ccode\u003emake_rng\u003c/code\u003e and add \u003ccode\u003e#[track_caller]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeprecate feature \u003ccode\u003elog\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1763\"\u003e#1763\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1761\"\u003e#1761\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1761\"\u003erust-random/rand#1761\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1763\"\u003e#1763\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1763\"\u003erust-random/rand#1763\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e[0.10.0] - 2026-02-08\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe dependency on \u003ccode\u003erand_chacha\u003c/code\u003e has been replaced with a dependency on \u003ccode\u003echacha20\u003c/code\u003e. This changes the implementation behind \u003ccode\u003eStdRng\u003c/code\u003e, but the output remains the same. There may be some API breakage when using the ChaCha-types directly as these are now the ones in \u003ccode\u003echacha20\u003c/code\u003e instead of \u003ccode\u003erand_chacha\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1642\"\u003e#1642\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRename fns \u003ccode\u003eIndexedRandom::choose_multiple\u003c/code\u003e -\u0026gt; \u003ccode\u003esample\u003c/code\u003e, \u003ccode\u003echoose_multiple_array\u003c/code\u003e -\u0026gt; \u003ccode\u003esample_array\u003c/code\u003e, \u003ccode\u003echoose_multiple_weighted\u003c/code\u003e -\u0026gt; \u003ccode\u003esample_weighted\u003c/code\u003e, struct \u003ccode\u003eSliceChooseIter\u003c/code\u003e -\u0026gt; \u003ccode\u003eIndexedSamples\u003c/code\u003e and fns \u003ccode\u003eIteratorRandom::choose_multiple\u003c/code\u003e -\u0026gt; \u003ccode\u003esample\u003c/code\u003e, \u003ccode\u003echoose_multiple_fill\u003c/code\u003e -\u0026gt; \u003ccode\u003esample_fill\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1632\"\u003e#1632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse Edition 2024 and MSRV 1.85 (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1653\"\u003e#1653\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLet \u003ccode\u003eFill\u003c/code\u003e be implemented for element types, not sliceable types (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1652\"\u003e#1652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eOsError::raw_os_error\u003c/code\u003e on UEFI targets by returning \u003ccode\u003eOption\u0026lt;usize\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1665\"\u003e#1665\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace fn \u003ccode\u003eTryRngCore::read_adapter(..) -\u0026gt; RngReadAdapter\u003c/code\u003e with simpler struct \u003ccode\u003eRngReader\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1669\"\u003e#1669\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove fns \u003ccode\u003eSeedableRng::from_os_rng\u003c/code\u003e, \u003ccode\u003etry_from_os_rng\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003eClone\u003c/code\u003e support for \u003ccode\u003eStdRng\u003c/code\u003e, \u003ccode\u003eReseedingRng\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1677\"\u003e#1677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epostcard\u003c/code\u003e instead of \u003ccode\u003ebincode\u003c/code\u003e to test the serde feature (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1693\"\u003e#1693\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/rust-random/rand/commit/9e7d328f60d6372ae22927f37d1a816fc980f25e\"\u003e\u003ccode\u003e9e7d328\u003c/code\u003e\u003c/a\u003e Prepare rand 0.10.3 (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1840\"\u003e#1840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/f73ce74d4ac8f47259e871e22939c6c52e17befe\"\u003e\u003ccode\u003ef73ce74\u003c/code\u003e\u003c/a\u003e Optimize WeightedIndex weight lookup and iteration (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/ef9e044b6b1f5fe541516d4b622c9c2d9932d789\"\u003e\u003ccode\u003eef9e044\u003c/code\u003e\u003c/a\u003e Avoid panic from deserialized \u003ccode\u003eUniform\\\u0026lt;char\u0026gt;\u003c/code\u003e where \u003ccode\u003erange == 0\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/c994eb1e40ab8cc9a929cfe11b345f7296bca393\"\u003e\u003ccode\u003ec994eb1\u003c/code\u003e\u003c/a\u003e docs: fix angle unit in quick start example (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1839\"\u003e#1839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/33dea4fcd044c3425fd8f35ffc9d203c652c3d73\"\u003e\u003ccode\u003e33dea4f\u003c/code\u003e\u003c/a\u003e Test that WeightedIndex rejects INFINITY with Error::Overflow (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1822\"\u003e#1822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/94c9078267aa9ea4e9ad61bd552b35245c995830\"\u003e\u003ccode\u003e94c9078\u003c/code\u003e\u003c/a\u003e Fix Uniform::new_inclusive overflow on large finite float ranges (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/bb1262f703ca04e4ce56be78e1dc4e204cd6a998\"\u003e\u003ccode\u003ebb1262f\u003c/code\u003e\u003c/a\u003e Use Xoshiro256PlusPlus in examples/rayon-monte-carlo.rs (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1805\"\u003e#1805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/521fab6a1bcf349760d2581c2143fbc1aafe8798\"\u003e\u003ccode\u003e521fab6\u003c/code\u003e\u003c/a\u003e Stop pinning dependencies (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1820\"\u003e#1820\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/3f7c4335fd6ba118aaed1ab59b1964808a955d4d\"\u003e\u003ccode\u003e3f7c433\u003c/code\u003e\u003c/a\u003e Stop pinning dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/cf4f73e3953ffcf97f575317a07f0fd5983bfe9e\"\u003e\u003ccode\u003ecf4f73e\u003c/code\u003e\u003c/a\u003e sample_efraimidis_spirakis: error on more than amount non-finite weights (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1814\"\u003e#1814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-random/rand/compare/0.9.4...0.10.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/Bahia-Software/polypus/pull/263","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bahia-Software%2Fpolypus/issues/263","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/263/packages"},{"uuid":"5720587588","node_id":"PR_kwDOSz2Uwc8AAAABG0Cj4Q","number":583,"state":"open","title":"deps: bump the minor-and-patch group with 5 updates","user":"dependabot[bot]","labels":["deps"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-05T23:51:24.000Z","updated_at":"2026-10-05T23:51:50.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps: bump","group_name":"minor-and-patch","update_count":5,"packages":[{"name":"russh","old_version":"0.63.2","new_version":"0.63.3","repository_url":"https://github.com/warp-tech/russh"},{"name":"lazy_static","old_version":"1.5.0","new_version":"1.5.1","repository_url":"https://github.com/rust-lang-nursery/lazy-static.rs"},{"name":"tokio-rustls","old_version":"0.26.5","new_version":"0.26.6","repository_url":"https://github.com/rustls/tokio-rustls"},{"name":"libc","old_version":"0.2.189","new_version":"0.2.190","repository_url":"https://github.com/rust-lang/libc"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the minor-and-patch group with 5 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [russh](https://github.com/warp-tech/russh) | `0.63.2` | `0.63.3` |\n| [lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs) | `1.5.0` | `1.5.1` |\n| [tokio-rustls](https://github.com/rustls/tokio-rustls) | `0.26.5` | `0.26.6` |\n| [libc](https://github.com/rust-lang/libc) | `0.2.189` | `0.2.190` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n\nUpdates `russh` from 0.63.2 to 0.63.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/warp-tech/russh/releases\"\u003erussh's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.63.3\u003c/h2\u003e\n\u003ch1\u003eFixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ec13b259: enforce inactivity timeout even during stalled writes (Eugene)\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/Eugeny/russh/commit/f33baf439be8c59c49cb6cb2ae5976c579495bdf\"\u003e\u003ccode\u003ef33baf4\u003c/code\u003e\u003c/a\u003e v0.63.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Eugeny/russh/commit/c13b259f51643d993047656ac06db5794877e279\"\u003e\u003ccode\u003ec13b259\u003c/code\u003e\u003c/a\u003e enforce inactivity timeout if even during stalled writes\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/warp-tech/russh/compare/v0.63.2...v0.63.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lazy_static` from 1.5.0 to 1.5.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rust-lang-nursery/lazy-static.rs/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokio-rustls` from 0.26.5 to 0.26.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rustls/tokio-rustls/releases\"\u003etokio-rustls's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.6\u003c/h2\u003e\n\u003cp\u003e0.26.5 added an optimization to batch multiple reads which could swallow some errors. Buffer errors so that they propagate to the caller as soon as the caller next reads from the stream.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuffer and propagate errors from transport by \u003ca href=\"https://github.com/dtolnay\"\u003e\u003ccode\u003e@​dtolnay\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rustls/tokio-rustls/pull/205\"\u003erustls/tokio-rustls#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare 0.26.6 by \u003ca href=\"https://github.com/djc\"\u003e\u003ccode\u003e@​djc\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rustls/tokio-rustls/pull/206\"\u003erustls/tokio-rustls#206\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/rustls/tokio-rustls/commit/8aebb7c9556ea8024c1b974b84a4a6f2e306889a\"\u003e\u003ccode\u003e8aebb7c\u003c/code\u003e\u003c/a\u003e Bump version to 0.26.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/6f8509a2bfca696b2b709f3346086c886620f351\"\u003e\u003ccode\u003e6f8509a\u003c/code\u003e\u003c/a\u003e Rename buffered_err to error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/bd0494d27d03a6cee042ccaf953b11e5bef68747\"\u003e\u003ccode\u003ebd0494d\u003c/code\u003e\u003c/a\u003e Buffer and propagate errors from transport\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/a7813403f55cb777a061a01885487d0ab4dcfb7e\"\u003e\u003ccode\u003ea781340\u003c/code\u003e\u003c/a\u003e Add regression test for issue 204\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/9d0dae6593daec0f9c44144e9ad7127fe574c8b0\"\u003e\u003ccode\u003e9d0dae6\u003c/code\u003e\u003c/a\u003e build(deps): bump rustls from 0.23.44 to 0.23.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/0ad049ef4620161936ee3216a75c0fcecc4b6dfd\"\u003e\u003ccode\u003e0ad049e\u003c/code\u003e\u003c/a\u003e build(deps): bump rustls from 0.23.43 to 0.23.44\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/4f913c754aa4171440e50ceb6a160ceebb0d326e\"\u003e\u003ccode\u003e4f913c7\u003c/code\u003e\u003c/a\u003e build(deps): bump rcgen from 0.14.9 to 0.14.10\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rustls/tokio-rustls/compare/v/0.26.5...v/0.26.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `libc` from 0.2.189 to 0.2.190\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/libc/releases\"\u003elibc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.2.190\u003c/h2\u003e\n\u003cp\u003eThere is now a single config for enabling 64-bit \u003ccode\u003etime_t\u003c/code\u003e: \u003ccode\u003elibc_unstable_time64\u003c/code\u003e. This can be set\nunconditionally; it opts in to 64-bit \u003ccode\u003etime_t\u003c/code\u003e on the following platforms that use 32-bit by\ndefault:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e32-bit Linux-GNU\u003c/li\u003e\n\u003cli\u003e32-bit Linux-uClibc\u003c/li\u003e\n\u003cli\u003e32-bit Linux-musl. Note that setting this flag also enables some other changes that happend in\nmusl v1.2.\u003c/li\u003e\n\u003cli\u003e32-bit Windows-GNU\u003c/li\u003e\n\u003cli\u003eESP-IDF (all targets with this environment are 32-bit)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMost other 32-bit platforms are either already using 64-bit \u003ccode\u003etime_t\u003c/code\u003e, or are considered legacy\nand will not be gaining support from their upstream maintainers.\u003c/p\u003e\n\u003cp\u003eYou can enable this using \u003ccode\u003eRUSTFLAGS\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_time64' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote that there may still be some changes to features gated by this config option, hence \u0026quot;unstable\u0026quot;\nin its name. In the near future we will rename it to just \u003ccode\u003elibc_time64\u003c/code\u003e. Until then, please test it\nout and report any bugs you find!\u003c/p\u003e\n\u003ch3\u003eSupport\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd initial support for HelenOS (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4355\"\u003e#4355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cp\u003eWe are slowly filling out the \u003ccode\u003eDefault\u003c/code\u003e implementations, to reduce the need for \u003ccode\u003emem::zeroed()\u003c/code\u003e in user code:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUnix: Implement \u003ccode\u003eDefault\u003c/code\u003e for a number of structs, especially on Apple platforms (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5576\"\u003e#5576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux, NetBSD: Give \u003ccode\u003estatvfs\u003c/code\u003e a \u003ccode\u003eDefault\u003c/code\u003e impl (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5583\"\u003e#5583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux: Add \u003ccode\u003eDefault\u003c/code\u003e to a \u003ccode\u003elinux/can.rs\u003c/code\u003e structs (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5257\"\u003e#5257\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther additions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eExpose the \u003ccode\u003elibc_unstable_time64\u003c/code\u003e cfg (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5411\"\u003e#5411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid, Glibc: Add \u003ccode\u003epthread_gettid_np\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5359\"\u003e#5359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add \u003ccode\u003eRTLD_NEXT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5323\"\u003e#5323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add reuseport BPF socket options (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5366\"\u003e#5366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add TCP header flags, options and SACK limits (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5358\"\u003e#5358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eNET_RT_DUMP2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5442\"\u003e#5442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5558\"\u003e#5558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eBPF_WORDALIGN\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5320\"\u003e#5320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003elchmod\u003c/code\u003e and \u003ccode\u003elchflags\u003c/code\u003e where supported (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5400\"\u003e#5400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eminherit\u003c/code\u003e and related constants (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4849\"\u003e#4849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Add more links to public headers and manual pages (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5407\"\u003e#5407\u003c/a\u003e), (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5485\"\u003e#5485\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/rust-lang/libc/blob/0.2.190/CHANGELOG.md\"\u003elibc's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.189...0.2.190\"\u003e0.2.190\u003c/a\u003e - 2026-10-02\u003c/h2\u003e\n\u003cp\u003eThere is now a single config for enabling 64-bit \u003ccode\u003etime_t\u003c/code\u003e: \u003ccode\u003elibc_unstable_time64\u003c/code\u003e. This can be set\nunconditionally; it opts in to 64-bit \u003ccode\u003etime_t\u003c/code\u003e on the following platforms that use 32-bit by\ndefault:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e32-bit Linux-GNU\u003c/li\u003e\n\u003cli\u003e32-bit Linux-uClibc\u003c/li\u003e\n\u003cli\u003e32-bit Linux-musl. Note that setting this flag also enables some other changes that happend in\nmusl v1.2.\u003c/li\u003e\n\u003cli\u003e32-bit Windows-GNU\u003c/li\u003e\n\u003cli\u003eESP-IDF (all targets with this environment are 32-bit)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMost other 32-bit platforms are either already using 64-bit \u003ccode\u003etime_t\u003c/code\u003e, or are considered legacy\nand will not be gaining support from their upstream maintainers.\u003c/p\u003e\n\u003cp\u003eYou can enable this using \u003ccode\u003eRUSTFLAGS\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_time64' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote that there may still be some changes to features gated by this config option, hence \u0026quot;unstable\u0026quot;\nin its name. In the near future we will rename it to just \u003ccode\u003elibc_time64\u003c/code\u003e. Until then, please test it\nout and report any bugs you find!\u003c/p\u003e\n\u003ch3\u003eSupport\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd initial support for HelenOS (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4355\"\u003e#4355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cp\u003eWe are slowly filling out the \u003ccode\u003eDefault\u003c/code\u003e implementations, to reduce the need for \u003ccode\u003emem::zeroed()\u003c/code\u003e in user code:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUnix: Implement \u003ccode\u003eDefault\u003c/code\u003e for a number of structs, especially on Apple platforms (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5576\"\u003e#5576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux, NetBSD: Give \u003ccode\u003estatvfs\u003c/code\u003e a \u003ccode\u003eDefault\u003c/code\u003e impl (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5583\"\u003e#5583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux: Add \u003ccode\u003eDefault\u003c/code\u003e to a \u003ccode\u003elinux/can.rs\u003c/code\u003e structs (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5257\"\u003e#5257\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther additions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eExpose the \u003ccode\u003elibc_unstable_time64\u003c/code\u003e cfg (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5411\"\u003e#5411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid, Glibc: Add \u003ccode\u003epthread_gettid_np\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5359\"\u003e#5359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add \u003ccode\u003eRTLD_NEXT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5323\"\u003e#5323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add reuseport BPF socket options (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5366\"\u003e#5366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add TCP header flags, options and SACK limits (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5358\"\u003e#5358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eNET_RT_DUMP2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5442\"\u003e#5442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5558\"\u003e#5558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eBPF_WORDALIGN\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5320\"\u003e#5320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003elchmod\u003c/code\u003e and \u003ccode\u003elchflags\u003c/code\u003e where supported (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5400\"\u003e#5400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eminherit\u003c/code\u003e and related constants (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4849\"\u003e#4849\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/rust-lang/libc/commit/7b0ab5528dc7f361f3a0b4c06c2cad9971617f75\"\u003e\u003ccode\u003e7b0ab55\u003c/code\u003e\u003c/a\u003e ci: Rename \u003ccode\u003epublish_0.2.yml\u003c/code\u003e to \u003ccode\u003erelease.yaml\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/ac85dde5fc269ab4a8cd935d3f76adf85372677c\"\u003e\u003ccode\u003eac85dde\u003c/code\u003e\u003c/a\u003e ci: Sync release permissions with \u003ccode\u003emain\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8f8cd2032060e1477c08077cd5f89215384723e2\"\u003e\u003ccode\u003e8f8cd20\u003c/code\u003e\u003c/a\u003e libc: Release 0.2.190\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/052c6e6a0186eeecf22c743d57c65a9963571241\"\u003e\u003ccode\u003e052c6e6\u003c/code\u003e\u003c/a\u003e changelog: Fix an incorrect commit link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/ea19fd7fba435c629ed247de7138d5cdb1dea309\"\u003e\u003ccode\u003eea19fd7\u003c/code\u003e\u003c/a\u003e test: Remove explicit \u003ccode\u003elibc\u003c/code\u003e version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/6dbf3a29a0a972087b684bc6d6cbf20f92143b66\"\u003e\u003ccode\u003e6dbf3a2\u003c/code\u003e\u003c/a\u003e dragonfly: Move \u003ccode\u003eINHERIT_ZERO\u003c/code\u003e to the freebsd module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8a64766c8514865dea77cfc3216f5a9dc38c6728\"\u003e\u003ccode\u003e8a64766\u003c/code\u003e\u003c/a\u003e apple: add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/28de5147ff5665b835472f00ead49da71084a593\"\u003e\u003ccode\u003e28de514\u003c/code\u003e\u003c/a\u003e linux, netbsd: Give statvfs a \u003ccode\u003eDefault\u003c/code\u003e impl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/a58a95f01d0561e75261052f5d8b3ad188f1ae4e\"\u003e\u003ccode\u003ea58a95f\u003c/code\u003e\u003c/a\u003e cygwin: Change \u003ccode\u003ePOSIX_SPAWN_*\u003c/code\u003e flags to \u003ccode\u003ec_short\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/d175264e718db4f216df7aad5f1291fd0ec34139\"\u003e\u003ccode\u003ed175264\u003c/code\u003e\u003c/a\u003e apple: \u003ccode\u003etimeval32\u003c/code\u003e is exhaustive\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.189...0.2.190\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/GeiserX/tailscale-rs/pull/583","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeiserX%2Ftailscale-rs/issues/583","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/583/packages"},{"uuid":"5711308367","node_id":"PR_kwDOTEV0gs8AAAABGsiIFg","number":1899,"state":"closed","title":"chore(deps): Bump the cargo-minor-patch group across 1 directory with 7 updates","user":"dependabot[bot]","labels":["rust","dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-10-06T08:53:59.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-05T11:38:07.000Z","updated_at":"2026-10-06T08:54:02.000Z","time_to_close":76552,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): Bump","group_name":"cargo-minor-patch","update_count":7,"packages":[{"name":"napi","old_version":"3.13.0","new_version":"3.14.0","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-build","old_version":"2.5.0","new_version":"2.6.0","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-derive","old_version":"3.6.9","new_version":"3.6.10","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"pg_query","old_version":"6.2.0","new_version":"6.2.1","repository_url":"https://github.com/pganalyze/pg_query.rs"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"pyo3-build-config","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"wat","old_version":"1.259.0","new_version":"1.261.0","repository_url":"https://github.com/bytecodealliance/wasm-tools"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the cargo-minor-patch group with 7 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [napi](https://github.com/napi-rs/napi-rs) | `3.13.0` | `3.14.0` |\n| [napi-build](https://github.com/napi-rs/napi-rs) | `2.5.0` | `2.6.0` |\n| [napi-derive](https://github.com/napi-rs/napi-rs) | `3.6.9` | `3.6.10` |\n| [pg_query](https://github.com/pganalyze/pg_query.rs) | `6.2.0` | `6.2.1` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [pyo3-build-config](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [wat](https://github.com/bytecodealliance/wasm-tools) | `1.259.0` | `1.261.0` |\n\n\nUpdates `napi` from 3.13.0 to 3.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-v3.14.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(napi)\u003c/em\u003e lock the allocator on threaded WASI and never hang after a worker crash (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3552\"\u003e#3552\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-v3.13.0...napi-v3.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-build` from 2.5.0 to 2.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-build's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-build-v2.6.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(async-runtime)\u003c/em\u003e offer the MultiThread flavor on wasm32-wasip1-threads (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3541\"\u003e#3541\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/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-build-v2.5.0...napi-build-v2.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-derive` from 3.6.9 to 3.6.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-derive's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-derive-v3.6.10\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate Cargo.toml dependencies\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-derive-v3.6.9...napi-derive-v3.6.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pg_query` from 6.2.0 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pganalyze/pg_query.rs/blob/main/CHANGELOG.md\"\u003epg_query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1   2026-09-30\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to libpg_query 17-6.2.5\u003c/li\u003e\n\u003cli\u003eSecurity fix: Heap out-of-bounds write and read in pg_query_normalize (\u003ca href=\"https://github.com/pganalyze/libpg_query/security/advisories/GHSA-6ggm-xmc9-8ffg\"\u003eGHSA-6ggm-xmc9-8ffg\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeparser:\n\u003cul\u003e\n\u003cli\u003eAdd strict checking for unexpected pointer values\u003c/li\u003e\n\u003cli\u003ePreserve parentheses around subscripted array constructors\n\u003cul\u003e\n\u003cli\u003eThis prevents \u003ccode\u003e(ARRAY[...])[...]\u003c/code\u003e from being deparsed as invalid SQL\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix handling of constraint key named \u003ccode\u003evalue\u003c/code\u003e in \u003ccode\u003eALTER TABLE\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003epg_query_normalize:\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eNOTIFY\u003c/code\u003e statements\u003c/li\u003e\n\u003cli\u003eAvoid undefined behaviour for overly large parameter references\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pganalyze/pg_query.rs/commit/c780e49d095c7c97def832e45ada3f559d5b42cf\"\u003e\u003ccode\u003ec780e49\u003c/code\u003e\u003c/a\u003e Release 6.2.1 (\u003ca href=\"https://redirect.github.com/pganalyze/pg_query.rs/issues/84\"\u003e#84\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pganalyze/pg_query.rs/commit/288e41028cf5b8380c30a3c860cba87592a241e8\"\u003e\u003ccode\u003e288e410\u003c/code\u003e\u003c/a\u003e Propagate real bindgen error in build.rs (\u003ca href=\"https://redirect.github.com/pganalyze/pg_query.rs/issues/81\"\u003e#81\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/pganalyze/pg_query.rs/compare/v6.2.0...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3-build-config` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3-build-config's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3-build-config's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `wat` from 1.259.0 to 1.261.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/releases\"\u003ewat's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.261.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch to ignoring semver-minor updates by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2710\"\u003ebytecodealliance/wasm-tools#2710\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump actions/setup-node from 4 to 7 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/bytecodealliance/wasm-tools/pull/2712\"\u003ebytecodealliance/wasm-tools#2712\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore semver-patch updates in dependabot by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2716\"\u003ebytecodealliance/wasm-tools#2716\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewit-parser: reject duplicate record fields, flags and cases by \u003ca href=\"https://github.com/youdie006\"\u003e\u003ccode\u003e@​youdie006\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2698\"\u003ebytecodealliance/wasm-tools#2698\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-wave: Upgrade logos to 0.16.1 by \u003ca href=\"https://github.com/lann\"\u003e\u003ccode\u003e@​lann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2718\"\u003ebytecodealliance/wasm-tools#2718\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewit-parser: reject flags with more than 32 members by \u003ca href=\"https://github.com/youdie006\"\u003e\u003ccode\u003e@​youdie006\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2719\"\u003ebytecodealliance/wasm-tools#2719\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix some issues validating custom sections by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2720\"\u003ebytecodealliance/wasm-tools#2720\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix incremental parsing of component \u003ccode\u003estart\u003c/code\u003e section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2722\"\u003ebytecodealliance/wasm-tools#2722\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_var_s33\u003c/code\u003e and handling in component defined types by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2723\"\u003ebytecodealliance/wasm-tools#2723\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject truncated nested modules and components by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2724\"\u003ebytecodealliance/wasm-tools#2724\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix validation of the key types of \u003ccode\u003emap\u003c/code\u003e by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2725\"\u003ebytecodealliance/wasm-tools#2725\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTighten some feature gates in \u003ccode\u003ewasmparser\u003c/code\u003e by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2721\"\u003ebytecodealliance/wasm-tools#2721\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix disallowing borrows in streams/futures/values by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2727\"\u003ebytecodealliance/wasm-tools#2727\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix some custom-descriptors validation of dead code by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2734\"\u003ebytecodealliance/wasm-tools#2734\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit total components/modules in validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2730\"\u003ebytecodealliance/wasm-tools#2730\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix validation of tags in components by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2741\"\u003ebytecodealliance/wasm-tools#2741\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease wasm-tools 1.261.0 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2738\"\u003ebytecodealliance/wasm-tools#2738\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix incorrect async callback validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2742\"\u003ebytecodealliance/wasm-tools#2742\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/compare/v1.260.0...v1.261.0\"\u003ehttps://github.com/bytecodealliance/wasm-tools/compare/v1.260.0...v1.261.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.260.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eperf: optimize \u003ccode\u003eOperatorsReader::skip_const_expr\u003c/code\u003e by \u003ca href=\"https://github.com/dishmaker\"\u003e\u003ccode\u003e@​dishmaker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2653\"\u003ebytecodealliance/wasm-tools#2653\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrint params/results of imports by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2654\"\u003ebytecodealliance/wasm-tools#2654\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-mutate: add global mutator by \u003ca href=\"https://github.com/GtechGovind\"\u003e\u003ccode\u003e@​GtechGovind\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2641\"\u003ebytecodealliance/wasm-tools#2641\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-encoder: add \u003ccode\u003eComponentBuilder::start()\u003c/code\u003e by \u003ca href=\"https://github.com/zacharywhitley\"\u003e\u003ccode\u003e@​zacharywhitley\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2657\"\u003ebytecodealliance/wasm-tools#2657\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: validate linker intrinsic function signatures by \u003ca href=\"https://github.com/RanaPriyansh\"\u003e\u003ccode\u003e@​RanaPriyansh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2646\"\u003ebytecodealliance/wasm-tools#2646\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix handling of names of fields in the text format by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2651\"\u003ebytecodealliance/wasm-tools#2651\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't emit a second \u003ccode\u003ename\u003c/code\u003e section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2659\"\u003ebytecodealliance/wasm-tools#2659\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate extended-name-section proposal implementation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2658\"\u003ebytecodealliance/wasm-tools#2658\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplement canonical interface names in wit-component by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2622\"\u003ebytecodealliance/wasm-tools#2622\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-mutate: add export mutator by \u003ca href=\"https://github.com/GtechGovind\"\u003e\u003ccode\u003e@​GtechGovind\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2639\"\u003ebytecodealliance/wasm-tools#2639\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasmparser: Increase \u003ccode\u003eMAX_WASM_INSTANCES\u003c/code\u003e to \u003ccode\u003e4_096\u003c/code\u003e by \u003ca href=\"https://github.com/noobHappylife\"\u003e\u003ccode\u003e@​noobHappylife\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2661\"\u003ebytecodealliance/wasm-tools#2661\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-encoder: add ComponentBuilder::instantiate_exports by \u003ca href=\"https://github.com/zacharywhitley\"\u003e\u003ccode\u003e@​zacharywhitley\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2655\"\u003ebytecodealliance/wasm-tools#2655\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTry out dependabot on this repo by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2662\"\u003ebytecodealliance/wasm-tools#2662\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix parsing empty compact import encoding groups by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2664\"\u003ebytecodealliance/wasm-tools#2664\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix an invalid mutation with a tag section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2665\"\u003ebytecodealliance/wasm-tools#2665\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport multiple supertypes in everything but validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2652\"\u003ebytecodealliance/wasm-tools#2652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate spec test suite submodule by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2667\"\u003ebytecodealliance/wasm-tools#2667\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplement validation of custom sections by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2668\"\u003ebytecodealliance/wasm-tools#2668\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove unused dependencies from workspace by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2669\"\u003ebytecodealliance/wasm-tools#2669\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add \u003ccode\u003e{stream,future}.forward\u003c/code\u003e canon builtins by \u003ca href=\"https://github.com/rvolosatovs\"\u003e\u003ccode\u003e@​rvolosatovs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2614\"\u003ebytecodealliance/wasm-tools#2614\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ewasm-tools component new\u003c/code\u003e for page-size-1 memory by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2666\"\u003ebytecodealliance/wasm-tools#2666\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd getter and setter support by \u003ca href=\"https://github.com/bvisness\"\u003e\u003ccode\u003e@​bvisness\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2660\"\u003ebytecodealliance/wasm-tools#2660\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRename seq_cst/acq_rel in the text format by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2673\"\u003ebytecodealliance/wasm-tools#2673\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(canonical-names): disallow encoding multiple exports with the same name by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2672\"\u003ebytecodealliance/wasm-tools#2672\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/bytecodealliance/wasm-tools/commit/5793351e3190a178d0dbdd509d183b6da896090a\"\u003e\u003ccode\u003e5793351\u003c/code\u003e\u003c/a\u003e Release wasm-tools 1.261.0 (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2738\"\u003e#2738\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/de1811cf001af4deb0a15288435340bbb4c711fa\"\u003e\u003ccode\u003ede1811c\u003c/code\u003e\u003c/a\u003e fix incorrect async callback validation (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2742\"\u003e#2742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/45eb6b6481b7699a42d4f901593b73e3155194fc\"\u003e\u003ccode\u003e45eb6b6\u003c/code\u003e\u003c/a\u003e Fix validation of tags in components (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2741\"\u003e#2741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/ade02824ce01545c0b2a48451e7b362f3f7074e7\"\u003e\u003ccode\u003eade0282\u003c/code\u003e\u003c/a\u003e Limit total components/modules in validation (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2730\"\u003e#2730\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d129fe42f9764d35c3a9d5dacac1f6fd1d3f1ea2\"\u003e\u003ccode\u003ed129fe4\u003c/code\u003e\u003c/a\u003e Fix disallowing borrows in streams/futures/values (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2727\"\u003e#2727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d4903a18e540cf1cc747a8e3a2aebcac7ad602f5\"\u003e\u003ccode\u003ed4903a1\u003c/code\u003e\u003c/a\u003e Tighten some feature gates in \u003ccode\u003ewasmparser\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2721\"\u003e#2721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/7385c089cecb0f6a2fe9f95d6a302cf0100bcfc1\"\u003e\u003ccode\u003e7385c08\u003c/code\u003e\u003c/a\u003e Fix some custom-descriptors validation of dead code (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2734\"\u003e#2734\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/65d480abad54094ab39242fa5f35ee2c54f87f10\"\u003e\u003ccode\u003e65d480a\u003c/code\u003e\u003c/a\u003e Fix validation of the key types of \u003ccode\u003emap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2725\"\u003e#2725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d2d492d4793143bd2cc651f4e9a150c6cb8ce197\"\u003e\u003ccode\u003ed2d492d\u003c/code\u003e\u003c/a\u003e Reject truncated nested modules and components (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2724\"\u003e#2724\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/ccacc243a0047c2c4d34c17559a76a446f4fdc83\"\u003e\u003ccode\u003eccacc24\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eread_var_s33\u003c/code\u003e and handling in component defined types (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2723\"\u003e#2723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/compare/v1.259.0...v1.261.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e","html_url":"https://github.com/registrystack/registry-stack/pull/1899","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/registrystack%2Fregistry-stack/issues/1899","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1899/packages"},{"uuid":"5696357841","node_id":"PR_kwDOSS4ZEs8AAAABGgxnZg","number":25,"state":"open","title":"chore(deps): bump pyo3 from 0.29.0 to 0.29.3","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-04T04:52:47.000Z","updated_at":"2026-10-04T04:53:45.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"pyo3","old_version":"0.29.0","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.29.0 to 0.29.3.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.29.2\u003c/h2\u003e\n\u003cp\u003eThis patch fixes a regression in PyO3 0.29.1 which broke PyPy 3.11 compatibility (\u003ccode\u003e#[pyclass]\u003c/code\u003e types would crash PyPy on instance deletion).\u003c/p\u003e\n\u003cp\u003eA few further fixes have also landed with similar themes to PyO3 0.29.1: fixes to minor reference counting bugs, rough edges which would cause crashes, issues which would cause failed builds, and fixes to \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation.\u003c/p\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/ImFeH2\"\u003e\u003ccode\u003e@​ImFeH2\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Tpt\"\u003e\u003ccode\u003e@​Tpt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/WaterWhisperer\"\u003e\u003ccode\u003e@​WaterWhisperer\u003c/code\u003e\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.29.2] - 2026-08-05\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePYO3_USE_RAW_DYLIB=0\u003c/code\u003e opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6185\"\u003e#6185\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.0...v0.29.3\"\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=pyo3\u0026package-manager=cargo\u0026previous-version=0.29.0\u0026new-version=0.29.3)](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 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/Sigilweaver/DICOM-Atlas/pull/25","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sigilweaver%2FDICOM-Atlas/issues/25","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/25/packages"},{"uuid":"5695539779","node_id":"PR_kwDOUudVZs8AAAABGgJU8g","number":6,"state":"closed","title":"build(deps): bump the rust-minor-patch group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-10-11T03:00:09.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-04T02:23:49.000Z","updated_at":"2026-10-11T03:00:13.000Z","time_to_close":606980,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"rust-minor-patch","update_count":2,"packages":[{"name":"thiserror","old_version":"2.0.20","new_version":"2.0.21","repository_url":"https://github.com/dtolnay/thiserror"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the rust-minor-patch group with 2 updates in the /rust directory: [thiserror](https://github.com/dtolnay/thiserror) and [pyo3](https://github.com/pyo3/pyo3).\n\nUpdates `thiserror` from 2.0.20 to 2.0.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/thiserror/releases\"\u003ethiserror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix parsing of generic unit variants in display expressions (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\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/dtolnay/thiserror/commit/b1827ee06f81a7d7f954e676771e19a97f9f8e3b\"\u003e\u003ccode\u003eb1827ee\u003c/code\u003e\u003c/a\u003e Release 2.0.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/58037b575a2a5543d0d54a49360554325b49f55a\"\u003e\u003ccode\u003e58037b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e from dtolnay/turbofish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/f82a0cf8f06c71263c2caa26e759f337d2778153\"\u003e\u003ccode\u003ef82a0cf\u003c/code\u003e\u003c/a\u003e Keep track of nested turbofish depth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72ea49262d6412ccbc08f1696dda8626409e657d\"\u003e\u003ccode\u003e72ea492\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72eea0d4ddb17ff9fa873aa74469de850021b22e\"\u003e\u003ccode\u003e72eea0d\u003c/code\u003e\u003c/a\u003e Resolve io_other_error clippy lint in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/07f09a2ec934df58508ce4fa5e7fbf27cca552c2\"\u003e\u003ccode\u003e07f09a2\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.74\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/2715388e8cc5787b3643251f7a7a637e89376688\"\u003e\u003ccode\u003e2715388\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/5a306c7d0a8588caaaaa6a7567aeb25c1c10719b\"\u003e\u003ccode\u003e5a306c7\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/ef9383b37d7c96b01e10df35d3e9e313c7b98b5a\"\u003e\u003ccode\u003eef9383b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-08-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/8336b8407fbfe69177c504cdbc379db20cf6f131\"\u003e\u003ccode\u003e8336b84\u003c/code\u003e\u003c/a\u003e Update ui tests for version 2.0.20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dtolnay/thiserror/compare/2.0.20...2.0.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/flaashok/Open-Jarvis/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/flaashok%2FOpen-Jarvis/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"},{"uuid":"5668753905","node_id":"PR_kwDOOmxEBs8AAAABGLGZQw","number":528,"state":"closed","title":"Bump pyo3 from 0.28.3 to 0.29.0","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-10-01T23:58:37.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-01T20:33:13.000Z","updated_at":"2026-10-01T23:58:42.000Z","time_to_close":12324,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pyo3","old_version":"0.28.3","new_version":"0.29.0","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.28.3 to 0.29.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.0\u003c/h2\u003e\n\u003cp\u003eThis release is a relatively large release with improvements across many areas of PyO3's API.\u003c/p\u003e\n\u003ch3\u003eBuild and packaging changes\u003c/h3\u003e\n\u003cp\u003eThis release brings full support for Python 3.15 beta. We encourage downstream projects to begin testing and distributing Python 3.15 beta wheels so that the ecosystem can prepare for the 3.15 final release later in the year.\u003c/p\u003e\n\u003cp\u003eAlongside Python 3.15 support comes support for its new \u0026quot;abi3t\u0026quot; stable ABI which supports both free-threaded and gil-enabled Python builds. For projects distributing stable ABI wheels, we recommend distributing (for each OS/architecture) an abi3 wheel built for your minimum supported Python version, a 3.14t version-specific wheel for free-threaded Python 3.14, and an abi3t wheel to support Python 3.15 (and future versions).\u003c/p\u003e\n\u003cp\u003eSupport for Python 3.7 has been dropped. Support for Python 3.13t, the first experimental free-threaded release of CPython, has also been dropped. 3.14t (and soon 3.15t) is more stable, performant, and the starting point for CPython's own declaration of \u0026quot;support\u0026quot; for the free-threaded build.\u003c/p\u003e\n\u003cp\u003eThe PyO3 build process (via the \u003ccode\u003epyo3-build-config\u003c/code\u003e crate) has been adjusted to reduce the cost of rebuilds when the environment used to detect the Python interpreter changes; \u003ccode\u003epyo3-build-config\u003c/code\u003e and \u003ccode\u003epyo3-macros\u003c/code\u003e will no longer be rebuilt in such cases (although \u003ccode\u003epyo3-ffi\u003c/code\u003e and crates downstream of it still will be rebuilt). As a consequence the \u003ccode\u003epyo3_build_config\u003c/code\u003e APIs now require crates to have a direct dependency on \u003ccode\u003epyo3\u003c/code\u003e or \u003ccode\u003epyo3-ffi\u003c/code\u003e. We hope to continue to reduce rebuild frequency and cost in a future PyO3 release.\u003c/p\u003e\n\u003ch3\u003eSecurity updates\u003c/h3\u003e\n\u003cp\u003eWith the recent boom in AI-assisted security scanning, PyO3 has inevitably had several correctness issues exposed by AI-assisted scanning.\u003c/p\u003e\n\u003cp\u003eIn particular, PyO3 0.29 fixes two security vulnerabilities we will be releasing to the RustSec Advisory Database imminently:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMissing \u003ccode\u003eSync\u003c/code\u003e bound on \u003ccode\u003ePyCFunction::new_closure\u003c/code\u003e closures\u003c/li\u003e\n\u003cli\u003ePossible out of bounds read in \u003ccode\u003eBoundTupleIterator::nth_back\u003c/code\u003e and \u003ccode\u003eBoundListIterator::nth_back\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAny code using the above APIs is advised to update as soon as possible.\u003c/p\u003e\n\u003cp\u003eThis release also contains several other minor breaking changes to close soundness holes uncovered by AI-assisted scanning. Our assessment as maintainers was that, excluding the two vulnerability cases listed above, these correctness issues would likely have crashed immediately upon user testing rather than leading to attacker-exploitable pathways. We nevertheless wanted to see them closed without the usual deprecation cycle. These cases are noted in the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eOther major themes in this release\u003c/h3\u003e\n\u003cp\u003eNew in this release is a CLI in \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate type stubs along with the \u003ccode\u003eexperimental-inspect\u003c/code\u003e feature. Downstream, \u003ccode\u003ematurin\u003c/code\u003e has also gained support to generate type stubs using the feature. The feature is reaching a point where substantial amount of type stubs can be generated automatically. We would like to encourage users to begin using this feature and helping us find what functionality is missing, with a hope we can declare its API stable given sufficient feedback.\u003c/p\u003e\n\u003cp\u003eA substantial amount of effort has been invested in \u003ccode\u003epyo3-ffi\u003c/code\u003e as part of the process of extending it with 3.15's new APIs. There have been many missing APIs from older Python versions added. There have also been a number of fixes to incorrect definitions (these are breaking changes, but also necessary for correctness); we hope there will be far fewer such cases in the future due to more comprehensive checking added to PyO3's CI. Finally, many private CPython APIs (those with \u003ccode\u003e_Py\u003c/code\u003e underscore-named prefix) have been removed from \u003ccode\u003epyo3-ffi\u003c/code\u003e's public API.\u003c/p\u003e\n\u003ch3\u003eIn closing\u003c/h3\u003e\n\u003cp\u003eThere are also many other incremental improvements, bug fixes and smaller features; full detail can be found in the \u003ca href=\"https://pyo3.rs/v0.29.0/changelog.html\"\u003eCHANGELOG\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003ePlease consult the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e for help upgrading.\u003c/p\u003e\n\u003cp\u003eThank you to everyone who contributed code, documentation, design ideas, bug reports, and feedback. The following contributors' commits are included in this release:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Alc-Alc\"\u003e\u003ccode\u003e@​Alc-Alc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/anuraaga\"\u003e\u003ccode\u003e@​anuraaga\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/BD103\"\u003e\u003ccode\u003e@​BD103\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Cheukting\"\u003e\u003ccode\u003e@​Cheukting\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ChristopherRabotin\"\u003e\u003ccode\u003e@​ChristopherRabotin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/clin1234\"\u003e\u003ccode\u003e@​clin1234\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/codeguru42\"\u003e\u003ccode\u003e@​codeguru42\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-11\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport the new PEP 803 abi3t ABI with new \u003ccode\u003eabi3t\u003c/code\u003e and \u003ccode\u003eabi3t-py315\u003c/code\u003e features. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-macros-backend\u003c/code\u003e no longer depends on \u003ccode\u003epyo3-build-config\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5809\"\u003e#5809\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.13t (3.14t and above continue to be supported; CPython declared free-threading supported starting with Python 3.14). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5865\"\u003e#5865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.7. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5912\"\u003e#5912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExtend range of supported versions of \u003ccode\u003ehashbrown\u003c/code\u003e optional dependency to include version 0.17. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5973\"\u003e#5973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport Python 3.15.0b1. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6014\"\u003e#6014\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-ffi\u003c/code\u003e is now \u003ccode\u003eno_std\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6022\"\u003e#6022\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_traceback\u003c/code\u003e to set the traceback of an exception object. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5349\"\u003e#5349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUnicodeDecodeError::new_err_from_utf8\u003c/code\u003e to create a \u003ccode\u003ePyErr\u003c/code\u003e from a \u003ccode\u003estr::Utf8Error\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5668\"\u003e#5668\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: implement \u003ccode\u003eINPUT_TYPE\u003c/code\u003e and \u003ccode\u003eOUTPUT_TYPE\u003c/code\u003e on optional third-party crate conversions. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5770\"\u003e#5770\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: include doc comments in generated stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5782\"\u003e#5782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::PythonAbi\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiKind\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiBuilder\u003c/code\u003e, \u003ccode\u003epyo3_build_config::InterpreterConfig::target_abi\u003c/code\u003e, and \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder::target_abi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBorrowed::get\u003c/code\u003e as an equivalent to \u003ccode\u003eBound::get\u003c/code\u003e and \u003ccode\u003ePy::get\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5849\"\u003e#5849\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyFrame::new\u003c/code\u003e, \u003ccode\u003ePyTraceBack::new\u003c/code\u003e, and \u003ccode\u003ePyFrameMethods::line_number\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5857\"\u003e#5857\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUntypedBuffer::obj\u003c/code\u003e to retrieve the Python object owning the buffer. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5870\"\u003e#5870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::new_with_value\u003c/code\u003e and \u003ccode\u003ePyCapsule::new_with_value_and_destructor\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5881\"\u003e#5881\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_context\u003c/code\u003e and \u003ccode\u003ePyErr::context\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a small CLI to \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5904\"\u003e#5904\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePython::version_str\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5921\"\u003e#5921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eTryFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003ePyRef\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyRefMut\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyClassGuard\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u0026lt;T\u0026gt;\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003eBound\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePy\u0026lt;T\u0026gt;\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyDictMethods::set_default\u003c/code\u003e and \u003ccode\u003ePyDictMethods::set_default_ref\u003c/code\u003e to allow atomically setting default values in a PyDict. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5955\"\u003e#5955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003ePyFrameMethods::outer|code|var|builtins|globals|locals\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5967\"\u003e#5967\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u003c/code\u003e conversions for \u003ccode\u003ePyErr\u003c/code\u003e from \u003ccode\u003estd::time::TryFromFloatSecsError\u003c/code\u003e, \u003ccode\u003estd::time::SystemTimeError\u003c/code\u003e, \u003ccode\u003estd::path::StripPrefixError\u003c/code\u003e, \u003ccode\u003estd::env::JoinPathsError\u003c/code\u003e, \u003ccode\u003estd::char::ParseCharError\u003c/code\u003e, and \u003ccode\u003estd::char::CharTryFromError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6001\"\u003e#6001\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6034\"\u003e#6034\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::import_pointer\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6066\"\u003e#6066\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6073\"\u003e#6073\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyListMethods::get_item_unchecked\u003c/code\u003e, \u003ccode\u003ePyTupleMethods::get_item_unchecked\u003c/code\u003e, and \u003ccode\u003ePyTupleMethods::get_borrowed_item_unchecked\u003c/code\u003e on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6075\"\u003e#6075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapSuper\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6104\"\u003e#6104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e to \u003ccode\u003epyo3::prelude\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eDebug\u003c/code\u003e impls for \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnable extending \u003ccode\u003ePyDateTime\u003c/code\u003e, \u003ccode\u003ePyDate\u003c/code\u003e, \u003ccode\u003ePyTime\u003c/code\u003e, \u003ccode\u003ePyDelta\u003c/code\u003e and \u003ccode\u003ePyTzInfo\u003c/code\u003e on abi3 with python 3.12+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6115\"\u003e#6115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyFunction\u003c/code\u003e available on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6117\"\u003e#6117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFFI definitions:\n\u003cul\u003e\n\u003cli\u003eAdded FFI definitions \u003ccode\u003ePyUnstable_Object_IsUniquelyReferenced\u003c/code\u003e, \u003ccode\u003ePyUnstable_Object_IsUniquelyReferencedTemporary\u003c/code\u003e, \u003ccode\u003ePyUnstable_EnableTryIncref\u003c/code\u003e, and \u003ccode\u003ePyUnstable_TryIncref\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5828\"\u003e#5828\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003effi::PyErr_GetHandledException\u003c/code\u003e and \u003ccode\u003effi::PyErr_SetHandledException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePy_HASH_SIPHASH13\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5891\"\u003e#5891\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePyStructSequence_UnnamedField\u003c/code\u003e constant on Python 3.9 and up (or 3.11 with abi3 features). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5892\"\u003e#5892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyUnstable_InterpreterFrame_GetCode\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLasti\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLine\u003c/code\u003e, and \u003ccode\u003ePyUnstable_ExecutableKinds\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5932\"\u003e#5932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyMarshal_WriteLongToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_WriteObjectToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadLongFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadShortFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadObjectFromFile\u003c/code\u003e, and \u003ccode\u003ePyMarshal_ReadLastObjectFromFile\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5934\"\u003e#5934\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyObject_GetAIter\u003c/code\u003e, \u003ccode\u003ePyAIter_Check\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyStringWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItem\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItemString\u003c/code\u003e, \u003ccode\u003ePySequence_ITEM\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_ITEM\u003c/code\u003e, and \u003ccode\u003ePySequence_Fast_ITEMS\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5942\"\u003e#5942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ecompat::PyObject_HasAttrWithError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5944\"\u003e#5944\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyDict_SetDefault\u003c/code\u003e, \u003ccode\u003ePyDict_SetDefaultRef\u003c/code\u003e, \u003ccode\u003ePyDict_ContainsString\u003c/code\u003e, \u003ccode\u003ePyDict_Pop\u003c/code\u003e, \u003ccode\u003ePyDict_PopString\u003c/code\u003e, \u003ccode\u003ePyDict_ClearWatcher\u003c/code\u003e, \u003ccode\u003ePyDict_Watch\u003c/code\u003e, \u003ccode\u003ePyDict_Unwatch\u003c/code\u003e, and \u003ccode\u003ePyFrozenDict_New\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5947\"\u003e#5947\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\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/PyO3/pyo3/commit/0f90242785fe0ce5e4e67c1da5ed361d410dbf8c\"\u003e\u003ccode\u003e0f90242\u003c/code\u003e\u003c/a\u003e release: 0.29.0 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6107\"\u003e#6107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/cd128ed50e6fffc4e49a08c149599a3b8bd21d5b\"\u003e\u003ccode\u003ecd128ed\u003c/code\u003e\u003c/a\u003e doc: mention abi3t, python3t.dll, and abi3t_compat folder in FAQ (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6124\"\u003e#6124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/7e2ef18b939488c446c9bcc1ed550e3ce22da5bd\"\u003e\u003ccode\u003e7e2ef18\u003c/code\u003e\u003c/a\u003e Avoid type checks in methods where CPython already guarantees the received ty...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f9301990e75e9f132aa3d4bf96a98d3abfac1c04\"\u003e\u003ccode\u003ef930199\u003c/code\u003e\u003c/a\u003e docs: additional detail in migration guide for 0.29 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6123\"\u003e#6123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91ab0d1b9bf26116d1a9fd8d833c32f22259da0b\"\u003e\u003ccode\u003e91ab0d1\u003c/code\u003e\u003c/a\u003e Enable Windows abi3t tests (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6106\"\u003e#6106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/fe0fdd518fb238ebf07480fde3c54a75041a1820\"\u003e\u003ccode\u003efe0fdd5\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ePyLong*\u003c/code\u003e API (3.14+) (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6016\"\u003e#6016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f41b1dfaf4fecce0edc6417a317671bdec593d07\"\u003e\u003ccode\u003ef41b1df\u003c/code\u003e\u003c/a\u003e Hang when reattaching after detach during shutdown (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6085\"\u003e#6085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/5ae66a859c2575b2b0ce0b2982f55388561513e6\"\u003e\u003ccode\u003e5ae66a8\u003c/code\u003e\u003c/a\u003e Fix double import on RustPython (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6122\"\u003e#6122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/ad4a510dddba60ac1887800365894839f7ba5a9c\"\u003e\u003ccode\u003ead4a510\u003c/code\u003e\u003c/a\u003e PyFunction: enable some extra tests with abi3 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6118\"\u003e#6118\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c79ac0ea2d7b751ea0191b4a5462d1de8f824728\"\u003e\u003ccode\u003ec79ac0e\u003c/code\u003e\u003c/a\u003e ci: Add test for minimum supported debug build of Python (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5852\"\u003e#5852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.28.3...v0.29.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=pyo3\u0026package-manager=cargo\u0026previous-version=0.28.3\u0026new-version=0.29.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 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)\nYou can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/mongodb/kingfisher/network/alerts).\n\n\u003c/details\u003e","html_url":"https://github.com/mongodb/kingfisher/pull/528","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mongodb%2Fkingfisher/issues/528","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/528/packages"},{"uuid":"5666009373","node_id":"PR_kwDOMOkJgc8AAAABGI3yOQ","number":87,"state":"closed","title":"chore(deps): bump the rust-dependencies group with 7 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-10-06T03:44:09.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-01T17:02:19.000Z","updated_at":"2026-10-06T03:44:11.000Z","time_to_close":384110,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"rust-dependencies","update_count":7,"packages":[{"name":"rayon","old_version":"1.11.0","new_version":"1.12.0","repository_url":"https://github.com/rayon-rs/rayon"},{"name":"thiserror","old_version":"2.0.18","new_version":"2.0.21","repository_url":"https://github.com/dtolnay/thiserror"},{"name":"rustc-hash","old_version":"2.1.1","new_version":"2.1.3","repository_url":"https://github.com/rust-lang/rustc-hash"},{"name":"pyo3","old_version":"0.27.2","new_version":"0.28.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"serde","old_version":"1.0.228","new_version":"1.0.229","repository_url":"https://github.com/serde-rs/serde"},{"name":"serde_json","old_version":"1.0.149","new_version":"1.0.151","repository_url":"https://github.com/serde-rs/json"},{"name":"pyo3-build-config","old_version":"0.27.2","new_version":"0.28.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the rust-dependencies group with 7 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [rayon](https://github.com/rayon-rs/rayon) | `1.11.0` | `1.12.0` |\n| [thiserror](https://github.com/dtolnay/thiserror) | `2.0.18` | `2.0.21` |\n| [rustc-hash](https://github.com/rust-lang/rustc-hash) | `2.1.1` | `2.1.3` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.27.2` | `0.28.3` |\n| [serde](https://github.com/serde-rs/serde) | `1.0.228` | `1.0.229` |\n| [serde_json](https://github.com/serde-rs/json) | `1.0.149` | `1.0.151` |\n| [pyo3-build-config](https://github.com/pyo3/pyo3) | `0.27.2` | `0.28.3` |\n\nUpdates `rayon` from 1.11.0 to 1.12.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rayon-rs/rayon/blob/main/RELEASES.md\"\u003erayon's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease rayon 1.12.0 (2026-04-13)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug in parallel \u003ccode\u003eRange\u0026lt;char\u0026gt;\u003c/code\u003e when the end is 0xE000, just past the\nsurrogate boundary, which was unsafely producing invalid \u003ccode\u003echar\u003c/code\u003e values.\u003c/li\u003e\n\u003cli\u003eThe new method \u003ccode\u003eParallelSlice::par_array_windows\u003c/code\u003e works like \u003ccode\u003epar_windows\u003c/code\u003e\nbut with a constant length, producing \u003ccode\u003e\u0026amp;[T; N]\u003c/code\u003e items.\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/rayon-rs/rayon/commit/7449d7dfede9bd1e2bde0c898b20f46db70a1ac2\"\u003e\u003ccode\u003e7449d7d\u003c/code\u003e\u003c/a\u003e Merge \u003ca href=\"https://redirect.github.com/rayon-rs/rayon/issues/1093\"\u003e#1093\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/b3d9e3f47364716f23e1bfd925b3ec710ef9710a\"\u003e\u003ccode\u003eb3d9e3f\u003c/code\u003e\u003c/a\u003e Release rayon 1.8.0 and rayon-core 1.12.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/3fe51e5cbd91b1d6ca04fb30ad80cabd8e6adefb\"\u003e\u003ccode\u003e3fe51e5\u003c/code\u003e\u003c/a\u003e Fix clippy::let_and_return\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/082f2152d26de7e6adfcdd60a052967daa523d4a\"\u003e\u003ccode\u003e082f215\u003c/code\u003e\u003c/a\u003e Merge \u003ca href=\"https://redirect.github.com/rayon-rs/rayon/issues/1087\"\u003e#1087\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/ea0c06df26029bee6adf9650660f71748c569c0e\"\u003e\u003ccode\u003eea0c06d\u003c/code\u003e\u003c/a\u003e core: registry: Factor out \u0026quot;wait till out of work\u0026quot; part of the main loop.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/75524e295767ad6543411b8d577a302c407d5fa8\"\u003e\u003ccode\u003e75524e2\u003c/code\u003e\u003c/a\u003e Merge \u003ca href=\"https://redirect.github.com/rayon-rs/rayon/issues/1063\"\u003e#1063\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/01d28003764758b6589e29cff40f8ca8d0d51797\"\u003e\u003ccode\u003e01d2800\u003c/code\u003e\u003c/a\u003e Ignore the multi-threaded test on emscripten/wasm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/40b59c0e443fc803c6b88b26fdf7a5194a19ca81\"\u003e\u003ccode\u003e40b59c0\u003c/code\u003e\u003c/a\u003e core: Make use_current_thread error rather than panic when already in the pool.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/f4db4d711e6382b13b4a7da88c0087e71a6252e5\"\u003e\u003ccode\u003ef4db4d7\u003c/code\u003e\u003c/a\u003e core: tests: Add some basic tests for ThreadPoolBuilder::use_current_thread.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/87274ad093b354384b50e73121366b07662bad1d\"\u003e\u003ccode\u003e87274ad\u003c/code\u003e\u003c/a\u003e core: registry: Add some more documentation for ThreadPoolBuilder::use_curren...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rayon-rs/rayon/compare/rayon-core-v1.11.0...rayon-core-v1.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `thiserror` from 2.0.18 to 2.0.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/thiserror/releases\"\u003ethiserror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix parsing of generic unit variants in display expressions (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.20\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSuppress redundant_field_names clippy lint in generated code (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/454\"\u003e#454\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.19\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to syn 3\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/dtolnay/thiserror/commit/b1827ee06f81a7d7f954e676771e19a97f9f8e3b\"\u003e\u003ccode\u003eb1827ee\u003c/code\u003e\u003c/a\u003e Release 2.0.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/58037b575a2a5543d0d54a49360554325b49f55a\"\u003e\u003ccode\u003e58037b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e from dtolnay/turbofish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/f82a0cf8f06c71263c2caa26e759f337d2778153\"\u003e\u003ccode\u003ef82a0cf\u003c/code\u003e\u003c/a\u003e Keep track of nested turbofish depth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72ea49262d6412ccbc08f1696dda8626409e657d\"\u003e\u003ccode\u003e72ea492\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72eea0d4ddb17ff9fa873aa74469de850021b22e\"\u003e\u003ccode\u003e72eea0d\u003c/code\u003e\u003c/a\u003e Resolve io_other_error clippy lint in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/07f09a2ec934df58508ce4fa5e7fbf27cca552c2\"\u003e\u003ccode\u003e07f09a2\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.74\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/2715388e8cc5787b3643251f7a7a637e89376688\"\u003e\u003ccode\u003e2715388\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/5a306c7d0a8588caaaaa6a7567aeb25c1c10719b\"\u003e\u003ccode\u003e5a306c7\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/ef9383b37d7c96b01e10df35d3e9e313c7b98b5a\"\u003e\u003ccode\u003eef9383b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-08-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/8336b8407fbfe69177c504cdbc379db20cf6f131\"\u003e\u003ccode\u003e8336b84\u003c/code\u003e\u003c/a\u003e Update ui tests for version 2.0.20\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dtolnay/thiserror/compare/2.0.18...2.0.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rustc-hash` from 2.1.1 to 2.1.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/rustc-hash/blob/main/CHANGELOG.md\"\u003erustc-hash's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.1.3\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/pull/77\"\u003eUse derive_const to fix \u003ccode\u003efeature = \u0026quot;nightly\u0026quot;\u003c/code\u003e build\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/pull/64\"\u003eInternally update to rand 0.9\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.1.2\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/pull/65\"\u003eRefactor byte hashing to remove unreachable panic\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/rust-lang/rustc-hash/commit/c13e7ccca705e6255387a2ebc6dca142d6881621\"\u003e\u003ccode\u003ec13e7cc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/issues/78\"\u003e#78\u003c/a\u003e from Noratrieb/new-version-2-1-3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/4c3fabd983f96c2c5178512940e29a050edd07e9\"\u003e\u003ccode\u003e4c3fabd\u003c/code\u003e\u003c/a\u003e Bump to 2.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/3f1c0994892f5c592fe17192811c3b46caa108ac\"\u003e\u003ccode\u003e3f1c099\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/issues/64\"\u003e#64\u003c/a\u003e from DaniPopes/rand-0.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/07c3f48480b2d1a143fe299f5a82812b311efea6\"\u003e\u003ccode\u003e07c3f48\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/issues/77\"\u003e#77\u003c/a\u003e from DaniPopes/const-update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/cbf0baf6f900674cf88f266f96a4fa223895186b\"\u003e\u003ccode\u003ecbf0baf\u003c/code\u003e\u003c/a\u003e Use derive_const in nightly feature\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/fdb275c8a0135403067ce1c4be8e97e53c473764\"\u003e\u003ccode\u003efdb275c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/issues/67\"\u003e#67\u003c/a\u003e from Noratrieb/new-version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/acafa431e930ded0ad8c1fa8b4ca1b320f53f983\"\u003e\u003ccode\u003eacafa43\u003c/code\u003e\u003c/a\u003e Prepare 2.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/140e5253440d595822e57b4f599b45aa500dde1d\"\u003e\u003ccode\u003e140e525\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/issues/65\"\u003e#65\u003c/a\u003e from morrisonlevi/split_first_chunk\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/f061387ad7da880a8bf5ce7e5c76aa863827520f\"\u003e\u003ccode\u003ef061387\u003c/code\u003e\u003c/a\u003e style: use consistent range format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/211455cb398aa0a6d7b12e81941d4a062af54d8e\"\u003e\u003ccode\u003e211455c\u003c/code\u003e\u003c/a\u003e refactor!: use split_first_chunk to help optimizer\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/rustc-hash/compare/v2.1.1...v2.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.27.2 to 0.28.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.28.3\u003c/h2\u003e\n\u003cp\u003eThis patch contains several fixes for stability of the PyO3 0.28.x series:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ePython::attach\u003c/code\u003e and \u003ccode\u003ePython::try_attach\u003c/code\u003e will no longer return before the thread initializing the interpreter has finished runnning \u003ccode\u003esite.py\u003c/code\u003e when using the \u003ccode\u003eauto-initialize\u003c/code\u003e feature.\u003c/li\u003e\n\u003cli\u003eFix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e when targeting the Python 3.15 prerelease interpreter.\u003c/li\u003e\n\u003cli\u003eFix possible deadlock in \u003ccode\u003e.into_pyobject()\u003c/code\u003e implementation for C-like \u003ccode\u003e#[pyclass]\u003c/code\u003e enums.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eA couple of edge cases causing compile failures were also fixed.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Embers-of-the-Fire\"\u003e\u003ccode\u003e@​Embers-of-the-Fire\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Icxolu\"\u003e\u003ccode\u003e@​Icxolu\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/maurosilber\"\u003e\u003ccode\u003e@​maurosilber\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.2\u003c/h2\u003e\n\u003cp\u003eThis patch release contains a soundness fix for subclassing native types such as \u003ccode\u003ePyList\u003c/code\u003e with the \u003ccode\u003eabi3\u003c/code\u003e feature enabled when targeting a minimum version of Python 3.12 or higher. (Support for doing such subclassing was newly added in PyO3 0.28.0.)\u003c/p\u003e\n\u003cp\u003ePyO3 0.28.0 and 0.28.1 will be yanked.\u003c/p\u003e\n\u003cp\u003eThis release also contains a correction to the FFI definition \u003ccode\u003ePyType_GetTypeDataSize\u003c/code\u003e and incorrectly-generated \u003ccode\u003e__qualname__\u003c/code\u003e on \u003ccode\u003e#[pyclass]\u003c/code\u003e enum variant types when using \u003ccode\u003e#[pyo3(name = \u0026quot;...\u0026quot;)]\u003c/code\u003e option to rename the enum and/or variant.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Icxolu\"\u003e\u003ccode\u003e@​Icxolu\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.1\u003c/h2\u003e\n\u003cp\u003eThis patch contains a number of minor compile-time fixes for PyO3 0.28.0.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/funsafemath\"\u003e\u003ccode\u003e@​funsafemath\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/rara64\"\u003e\u003ccode\u003e@​rara64\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/tdyas\"\u003e\u003ccode\u003e@​tdyas\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.0\u003c/h2\u003e\n\u003cp\u003eThis release contains many improvements across PyO3's feature set:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eProper support for \u003ccode\u003e__init__\u003c/code\u003e methods for \u003ccode\u003e#[pyclass]\u003c/code\u003e types\u003c/li\u003e\n\u003cli\u003eSupport for \u003ccode\u003e#[deleter]\u003c/code\u003es to complement the existing \u003ccode\u003e#[getter]\u003c/code\u003e and \u003ccode\u003e#[setter]\u003c/code\u003e attributes when implementing class \u0026quot;properties\u0026quot;.\u003c/li\u003e\n\u003cli\u003eSupport for subclassing many Python types with the \u003ccode\u003eabi3\u003c/code\u003e feature (requires Python 3.12+).\u003c/li\u003e\n\u003cli\u003eA new \u003ccode\u003e#[pyclass(new = \u0026quot;from_fields\u0026quot;)]\u003c/code\u003e option to automatically define the constructor from the class fields.\u003c/li\u003e\n\u003cli\u003eMany corrections to FFI definitions (including removal of many private CPython methods)\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.28.3] - 2026-04-02\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix compile error with \u003ccode\u003e#[pyclass(get_all)]\u003c/code\u003e on a type named \u003ccode\u003eProbe\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5837\"\u003e#5837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix compile error in debug builds related to \u003ccode\u003e_Py_NegativeRefcount\u003c/code\u003e with Python \u0026lt; 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5847\"\u003e#5847\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix a race condition where \u003ccode\u003ePython::attach\u003c/code\u003e or \u003ccode\u003etry_attach\u003c/code\u003e could return before \u003ccode\u003esite.py\u003c/code\u003e had finished running. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5903\"\u003e#5903\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e with Python 3.15 prerelease versions. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5907\"\u003e#5907\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deadlock in \u003ccode\u003e.into_pyobject()\u003c/code\u003e implementation for C-like \u003ccode\u003e#[pyclass]\u003c/code\u003e enums. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5928\"\u003e#5928\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.2] - 2026-02-18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix complex enum \u003ccode\u003e__qualname__\u003c/code\u003e not using python name \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5815\"\u003e#5815\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyType_GetTypeDataSize\u003c/code\u003e (was incorrectly named \u003ccode\u003ePyObject_GetTypeDataSize\u003c/code\u003e). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5819\"\u003e#5819\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix memory corruption when subclassing native types with \u003ccode\u003eabi3\u003c/code\u003e feature on Python 3.12+ (newly enabled in PyO3 0.28.0). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5823\"\u003e#5823\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.1] - 2026-02-14\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003e*args\u003c/code\u003e / \u003ccode\u003e**kwargs\u003c/code\u003e support in\u003ccode\u003e experimental-async\u003c/code\u003e feature (regressed in 0.28.0). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5771\"\u003e#5771\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::declare_interior_mutable_const\u003c/code\u003e warning inside \u003ccode\u003e#[pyclass]\u003c/code\u003e generated code on enums. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5772\"\u003e#5772\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eambiguous_associated_items\u003c/code\u003e compilation error when deriving \u003ccode\u003eFromPyObject\u003c/code\u003e or using \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e macro on enums with \u003ccode\u003eError\u003c/code\u003e variant. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5784\"\u003e#5784\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e__qualname__\u003c/code\u003e for complex \u003ccode\u003e#[pyclass]\u003c/code\u003e enum variants to include the enum name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5796\"\u003e#5796\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing \u003ccode\u003estd::sync::atomic::Ordering\u003c/code\u003e import for targets without atomic64. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5808\"\u003e#5808\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.0] - 2026-02-01\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump MSRV to Rust 1.83. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5531\"\u003e#5531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump minimum supported \u003ccode\u003equote\u003c/code\u003e version to 1.0.37. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5531\"\u003e#5531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump supported GraalPy version to 25.0. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5542\"\u003e#5542\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop \u003ccode\u003ememoffset\u003c/code\u003e dependency. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5545\"\u003e#5545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport for free-threaded Python is now opt-out rather than opt-in. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5564\"\u003e#5564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump \u003ccode\u003etarget-lexicon\u003c/code\u003e dependency to 0.13.3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5571\"\u003e#5571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop \u003ccode\u003eindoc\u003c/code\u003e and \u003ccode\u003eunindent\u003c/code\u003e dependencies. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5608\"\u003e#5608\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e__init__\u003c/code\u003e support in \u003ccode\u003e#[pymethods]\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/4951\"\u003e#4951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePySuper\u003c/code\u003e on PyPy, GraalPy and ABI3 \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/4951\"\u003e#4951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyString::from_fmt\u003c/code\u003e and \u003ccode\u003epy_format!\u003c/code\u003e macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5199\"\u003e#5199\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e#[pyclass(new = \u0026quot;from_fields\u0026quot;)]\u003c/code\u003e option. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5421\"\u003e#5421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3::buffer::PyUntypedBuffer\u003c/code\u003e, a type-erased form of \u003ccode\u003ePyBuffer\u0026lt;T\u0026gt;\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5458\"\u003e#5458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyBytes::new_with_writer\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5517\"\u003e#5517\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClass::NAME\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5579\"\u003e#5579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::add_libpython_rpath_link_args\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5624\"\u003e#5624\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/PyO3/pyo3/commit/743af645e7143be6abe2217aafaa0540cf532af4\"\u003e\u003ccode\u003e743af64\u003c/code\u003e\u003c/a\u003e release: 0.28.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/2042b4c0c1da74844f43f4970ab52386abf6deac\"\u003e\u003ccode\u003e2042b4c\u003c/code\u003e\u003c/a\u003e fix deadlock when initializing enum via \u003ccode\u003einto_pyobject()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5928\"\u003e#5928\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/01572470d031d16cd14fdc96f330397b4055f424\"\u003e\u003ccode\u003e0157247\u003c/code\u003e\u003c/a\u003e ci: update UI tests for Rust 1.94 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5859\"\u003e#5859\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/e234f8a75aaa0c0c0feecaf360107a78a7c0e436\"\u003e\u003ccode\u003ee234f8a\u003c/code\u003e\u003c/a\u003e Update getting-started.md (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5899\"\u003e#5899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c06848d5f466350efe6bd05c9fc6cd923a12dd78\"\u003e\u003ccode\u003ec06848d\u003c/code\u003e\u003c/a\u003e fix ffi-check in 3.15.0a7 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5873\"\u003e#5873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/83f4283bde6e207827edeb9422e79944ced8327c\"\u003e\u003ccode\u003e83f4283\u003c/code\u003e\u003c/a\u003e remove unused \u003ccode\u003etry_trait_v2\u003c/code\u003e feature when enabling the \u003ccode\u003enightly\u003c/code\u003e feature (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5868\"\u003e#5868\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/0de57ed453eeb47e40b011d8be2cdc0028116ebc\"\u003e\u003ccode\u003e0de57ed\u003c/code\u003e\u003c/a\u003e Fix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5907\"\u003e#5907\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/49cd13fae22c5e46a4b0946539b9e64bb8ccb573\"\u003e\u003ccode\u003e49cd13f\u003c/code\u003e\u003c/a\u003e fixes \u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5900\"\u003e#5900\u003c/a\u003e -- address race condition with initialization and site.py loading...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c90d163638ef4a754fd31a3a29e3ba2ebc05a354\"\u003e\u003ccode\u003ec90d163\u003c/code\u003e\u003c/a\u003e [fix] Fix \u003ccode\u003estd::ffi\u003c/code\u003e import for \u003ccode\u003e_Py_NegativeRefcount\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5847\"\u003e#5847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/b79d7257dd0abd9d6d029878d8f0902a8e35e695\"\u003e\u003ccode\u003eb79d725\u003c/code\u003e\u003c/a\u003e fix(pyo3-macros): allow pyclass named Probe (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5837\"\u003e#5837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.27.2...v0.28.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `serde` from 1.0.228 to 1.0.229\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/serde-rs/serde/releases\"\u003eserde's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.229\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to syn 3\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/serde-rs/serde/commit/7fc3b4c30c94f73a96ebd1553f2b090d928fc3a8\"\u003e\u003ccode\u003e7fc3b4c\u003c/code\u003e\u003c/a\u003e Release 1.0.229\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/6d6e9a11101354ce769a3438a088b6b9305c1863\"\u003e\u003ccode\u003e6d6e9a1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/serde-rs/serde/issues/3085\"\u003e#3085\u003c/a\u003e from dtolnay/syn3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/6dec3b751126c8338cac0fe8085612d695e4ecf3\"\u003e\u003ccode\u003e6dec3b7\u003c/code\u003e\u003c/a\u003e Update to syn 3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/cfe669241065984177ff63af8b45058e6e9b499d\"\u003e\u003ccode\u003ecfe6692\u003c/code\u003e\u003c/a\u003e Resolve mut_mut pedantic clippy lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/1023d077510b4aef36a41ef56fdb7798568a2654\"\u003e\u003ccode\u003e1023d07\u003c/code\u003e\u003c/a\u003e Update actions/upload-artifact@v6 -\u0026gt; v7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/dd682c2c86aa7629e77c1ccd93212d3729f4c66d\"\u003e\u003ccode\u003edd682c2\u003c/code\u003e\u003c/a\u003e Update actions/checkout@v6 -\u0026gt; v7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/5f0f18b9211732f2d82f73b5a43e4f5ff3701251\"\u003e\u003ccode\u003e5f0f18b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-06-01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/63a1498f0e7be991ffac5939bdd202ca16e9a23f\"\u003e\u003ccode\u003e63a1498\u003c/code\u003e\u003c/a\u003e Regenerate stderr with trybuild normalization fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/fa7da4a93567ed347ad0735c28e439fca688ef26\"\u003e\u003ccode\u003efa7da4a\u003c/code\u003e\u003c/a\u003e Fix unused_features warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/6b1a17851ea3d86a56aa116ca1cbf428f8d5f22d\"\u003e\u003ccode\u003e6b1a178\u003c/code\u003e\u003c/a\u003e Unpin CI miri toolchain\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/serde-rs/serde/compare/v1.0.228...v1.0.229\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `serde_json` from 1.0.149 to 1.0.151\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/serde-rs/json/releases\"\u003eserde_json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.151\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd RawValue::from_string_unchecked (\u003ca href=\"https://redirect.github.com/serde-rs/json/issues/1331\"\u003e#1331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/WonderLawrence\"\u003e\u003ccode\u003e@​WonderLawrence\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.0.150\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReject non-string enum object keys (\u003ca href=\"https://redirect.github.com/serde-rs/json/issues/1324\"\u003e#1324\u003c/a\u003e, thanks \u003ca href=\"https://github.com/puneetdixit200\"\u003e\u003ccode\u003e@​puneetdixit200\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/de8500740cdcabffb9734f503e4889def823cf10\"\u003e\u003ccode\u003ede85007\u003c/code\u003e\u003c/a\u003e Release 1.0.151\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/3b2b3c5f28c20ed988bd081a4147c535e7e65c74\"\u003e\u003ccode\u003e3b2b3c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/serde-rs/json/issues/1331\"\u003e#1331\u003c/a\u003e from WonderLawrence/rawvalue-from-string-unchecked\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/0406d96860e9d8b9252e2002fa3e626ae48ca1b0\"\u003e\u003ccode\u003e0406d96\u003c/code\u003e\u003c/a\u003e Debug-assert well-formedness and no-whitespace in from_string_unchecked\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/cf16f75d81e28c723323bfc60a68fc02d2994fff\"\u003e\u003ccode\u003ecf16f75\u003c/code\u003e\u003c/a\u003e Add RawValue::from_string_unchecked\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/827a315bf2198558f0325b07bcc1e2cd973aba2f\"\u003e\u003ccode\u003e827a315\u003c/code\u003e\u003c/a\u003e Update actions/upload-artifact@v6 -\u0026gt; v7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/cea36a5c017ebffdeb95d0cd0f1aad473bfab758\"\u003e\u003ccode\u003ecea36a5\u003c/code\u003e\u003c/a\u003e Update actions/checkout@v6 -\u0026gt; v7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/a1ae73ac6a6940a4a57c673aebaa13ed4dfe3e8c\"\u003e\u003ccode\u003ea1ae73a\u003c/code\u003e\u003c/a\u003e Release 1.0.150\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/1a360b0a6c003912afc3503c834b0edd798bca28\"\u003e\u003ccode\u003e1a360b0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/serde-rs/json/issues/1324\"\u003e#1324\u003c/a\u003e from puneetdixit200/reject-non-string-enum-keys\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/2037b634f9dccbddc11cff189ebeb5854fa0e01c\"\u003e\u003ccode\u003e2037b63\u003c/code\u003e\u003c/a\u003e Reject non-string enum object keys\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/5d30df60e916e9b8fc46c74794007ff271fdfbbf\"\u003e\u003ccode\u003e5d30df6\u003c/code\u003e\u003c/a\u003e Resolve manual_assert_eq pedantic clippy lint\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/serde-rs/json/compare/v1.0.149...v1.0.151\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3-build-config` from 0.27.2 to 0.28.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3-build-config's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.28.3\u003c/h2\u003e\n\u003cp\u003eThis patch contains several fixes for stability of the PyO3 0.28.x series:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ePython::attach\u003c/code\u003e and \u003ccode\u003ePython::try_attach\u003c/code\u003e will no longer return before the thread initializing the interpreter has finished runnning \u003ccode\u003esite.py\u003c/code\u003e when using the \u003ccode\u003eauto-initialize\u003c/code\u003e feature.\u003c/li\u003e\n\u003cli\u003eFix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e when targeting the Python 3.15 prerelease interpreter.\u003c/li\u003e\n\u003cli\u003eFix possible deadlock in \u003ccode\u003e.into_pyobject()\u003c/code\u003e implementation for C-like \u003ccode\u003e#[pyclass]\u003c/code\u003e enums.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eA couple of edge cases causing compile failures were also fixed.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Embers-of-the-Fire\"\u003e\u003ccode\u003e@​Embers-of-the-Fire\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Icxolu\"\u003e\u003ccode\u003e@​Icxolu\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/maurosilber\"\u003e\u003ccode\u003e@​maurosilber\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.2\u003c/h2\u003e\n\u003cp\u003eThis patch release contains a soundness fix for subclassing native types such as \u003ccode\u003ePyList\u003c/code\u003e with the \u003ccode\u003eabi3\u003c/code\u003e feature enabled when targeting a minimum version of Python 3.12 or higher. (Support for doing such subclassing was newly added in PyO3 0.28.0.)\u003c/p\u003e\n\u003cp\u003ePyO3 0.28.0 and 0.28.1 will be yanked.\u003c/p\u003e\n\u003cp\u003eThis release also contains a correction to the FFI definition \u003ccode\u003ePyType_GetTypeDataSize\u003c/code\u003e and incorrectly-generated \u003ccode\u003e__qualname__\u003c/code\u003e on \u003ccode\u003e#[pyclass]\u003c/code\u003e enum variant types when using \u003ccode\u003e#[pyo3(name = \u0026quot;...\u0026quot;)]\u003c/code\u003e option to rename the enum and/or variant.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Icxolu\"\u003e\u003ccode\u003e@​Icxolu\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.1\u003c/h2\u003e\n\u003cp\u003eThis patch contains a number of minor compile-time fixes for PyO3 0.28.0.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/funsafemath\"\u003e\u003ccode\u003e@​funsafemath\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/rara64\"\u003e\u003ccode\u003e@​rara64\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/tdyas\"\u003e\u003ccode\u003e@​tdyas\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.0\u003c/h2\u003e\n\u003cp\u003eThis release contains many improvements across PyO3's feature set:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eProper support for \u003ccode\u003e__init__\u003c/code\u003e methods for \u003ccode\u003e#[pyclass]\u003c/code\u003e types\u003c/li\u003e\n\u003cli\u003eSupport for \u003ccode\u003e#[deleter]\u003c/code\u003es to complement the existing \u003ccode\u003e#[getter]\u003c/code\u003e and \u003ccode\u003e#[setter]\u003c/code\u003e attributes when implementing class \u0026quot;properties\u0026quot;.\u003c/li\u003e\n\u003cli\u003eSupport for subclassing many Python types with the \u003ccode\u003eabi3\u003c/code\u003e feature (requires Python 3.12+).\u003c/li\u003e\n\u003cli\u003eA new \u003ccode\u003e#[pyclass(new = \u0026quot;from_fields\u0026quot;)]\u003c/code\u003e option to automatically define the constructor from the class fields.\u003c/li\u003e\n\u003cli\u003eMany corrections to FFI definitions (including removal of many private CPython methods)\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3-build-config's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.28.3] - 2026-04-02\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix compile error with \u003ccode\u003e#[pyclass(get_all)]\u003c/code\u003e on a type named \u003ccode\u003eProbe\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5837\"\u003e#5837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix compile error in debug builds related to \u003ccode\u003e_Py_NegativeRefcount\u003c/code\u003e with Python \u0026lt; 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5847\"\u003e#5847\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix a race condition where \u003ccode\u003ePython::attach\u003c/code\u003e or \u003ccode\u003etry_attach\u003c/code\u003e could return before \u003ccode\u003esite.py\u003c/code\u003e had finished running. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5903\"\u003e#5903\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e with Python 3.15 prerelease versions. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5907\"\u003e#5907\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deadlock in \u003ccode\u003e.into_pyobject()\u003c/code\u003e implementation for C-like \u003ccode\u003e#[pyclass]\u003c/code\u003e enums. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5928\"\u003e#5928\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.2] - 2026-02-18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix complex enum \u003ccode\u003e__qualname__\u003c/code\u003e not using python name \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5815\"\u003e#5815\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyType_GetTypeDataSize\u003c/code\u003e (was incorrectly named \u003ccode\u003ePyObject_GetTypeDataSize\u003c/code\u003e). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5819\"\u003e#5819\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix memory corruption when subclassing native types with \u003ccode\u003eabi3\u003c/code\u003e feature on Python 3.12+ (newly enabled in PyO3 0.28.0). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5823\"\u003e#5823\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.1] - 2026-02-14\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003e*args\u003c/code\u003e / \u003ccode\u003e**kwargs\u003c/code\u003e support in\u003ccode\u003e experimental-async\u003c/code\u003e feature (regressed in 0.28.0). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5771\"\u003e#5771\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::declare_interior_mutable_const\u003c/code\u003e warning inside \u003ccode\u003e#[pyclass]\u003c/code\u003e generated code on enums. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5772\"\u003e#5772\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eambiguous_associated_items\u003c/code\u003e compilation error when deriving \u003ccode\u003eFromPyObject\u003c/code\u003e or using \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e macro on enums with \u003ccode\u003eError\u003c/code\u003e variant. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5784\"\u003e#5784\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e__qualname__\u003c/code\u003e for complex \u003ccode\u003e#[pyclass]\u003c/code\u003e enum variants to include the enum name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5796\"\u003e#5796\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing \u003ccode\u003estd::sync::atomic::Ordering\u003c/code\u003e import for targets without atomic64. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5808\"\u003e#5808\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.0] - 2026-02-01\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump MSRV to Rust 1.83. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5531\"\u003e#5531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump minimum supported \u003ccode\u003equote\u003c/code\u003e version to 1.0.37. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5531\"\u003e#5531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump supported GraalPy version to 25.0. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5542\"\u003e#5542\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop \u003ccode\u003ememoffset\u003c/code\u003e dependency. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5545\"\u003e#5545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport for free-threaded Python is now opt-out rather than opt-in. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5564\"\u003e#5564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump \u003ccode\u003etarget-lexicon\u003c/code\u003e dependency to 0.13.3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5571\"\u003e#5571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop \u003ccode\u003eindoc\u003c/code\u003e and \u003ccode\u003eunindent\u003c/code\u003e dependencies. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5608\"\u003e#5608\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e__init__\u003c/code\u003e support in \u003ccode\u003e#[pymethods]\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/4951\"\u003e#4951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePySuper\u003c/code\u003e on PyPy, GraalPy and ABI3 \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/4951\"\u003e#4951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyString::from_fmt\u003c/code\u003e and \u003ccode\u003epy_format!\u003c/code\u003e macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5199\"\u003e#5199\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e#[pyclass(new = \u0026quot;from_fields\u0026quot;)]\u003c/code\u003e option. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5421\"\u003e#5421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3::buffer::PyUntypedBuffer\u003c/code\u003e, a type-erased form of \u003ccode\u003ePyBuffer\u0026lt;T\u0026gt;\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5458\"\u003e#5458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyBytes::new_with_writer\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5517\"\u003e#5517\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClass::NAME\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5579\"\u003e#5579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::add_libpython_rpath_link_args\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5624\"\u003e#5624\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/PyO3/pyo3/commit/743af645e7143be6abe2217aafaa0540cf532af4\"\u003e\u003ccode\u003e743af64\u003c/code\u003e\u003c/a\u003e release: 0.28.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/2042b4c0c1da74844f43f4970ab52386abf6deac\"\u003e\u003ccode\u003e2042b4c\u003c/code\u003e\u003c/a\u003e fix deadlock when initializing enum via \u003ccode\u003einto_pyobject()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5928\"\u003e#5928\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/01572470d031d16cd14fdc96f330397b4055f424\"\u003e\u003ccode\u003e0157247\u003c/code\u003e\u003c/a\u003e ci: update UI tests for Rust 1.94 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5859\"\u003e#5859\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/e234f8a75aaa0c0c0feecaf360107a78a7c0e436\"\u003e\u003ccode\u003ee234f8a\u003c/code\u003e\u003c/a\u003e Update getting-started.md (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5899\"\u003e#5899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c06848d5f466350efe6bd05c9fc6cd923a12dd78\"\u003e\u003ccode\u003ec06848d\u003c/code\u003e\u003c/a\u003e fix ffi-check in 3.15.0a7 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5873\"\u003e#5873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/83f4283bde6e207827edeb9422e79944ced8327c\"\u003e\u003ccode\u003e83f4283\u003c/code\u003e\u003c/a\u003e remove unused \u003ccode\u003etry_trait_v2\u003c/code\u003e feature when enabling the \u003ccode\u003enightly\u003c/code\u003e feature (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5868\"\u003e#5868\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/0de57ed453eeb47e40b011d8be2cdc0028116ebc\"\u003e\u003ccode\u003e0de57ed\u003c/code\u003e\u003c/a\u003e Fix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5907\"\u003e#5907\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/49cd13fae22c5e46a4b0946539b9e64bb8ccb573\"\u003e\u003ccode\u003e49cd13f\u003c/code\u003e\u003c/a\u003e fixes \u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5900\"\u003e#5900\u003c/a\u003e -- address race condition with initialization and site.py loading...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c90d163638ef4a754fd31a3a29e3ba2ebc05a354\"\u003e\u003ccode\u003ec90d163\u003c/code\u003e\u003c/a\u003e [fix] Fix \u003ccode\u003estd::ffi\u003c/code\u003e import for \u003ccode\u003e_Py_NegativeRefcount\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5847\"\u003e#5847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/b79d7257dd0abd9d6d029878d8f0902a8e35e695\"\u003e\u003ccode\u003eb79d725\u003c/code\u003e\u003c/a\u003e fix(pyo3-macros): allow pyclass named Probe (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5837\"\u003e#5837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.27.2...v0.28.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/PyDataBlog/simstring_rs/pull/87","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyDataBlog%2Fsimstring_rs/issues/87","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/87/packages"},{"uuid":"5657112035","node_id":"PR_kwDOD80FKM8AAAABGBux8w","number":943,"state":"closed","title":"chore: bump pyo3 from 0.29.0 to 0.29.2","user":"dependabot[bot]","labels":["dependabot"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-10-01T04:52:58.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-01T04:46:14.000Z","updated_at":"2026-10-01T04:53:38.000Z","time_to_close":404,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore","packages":[{"name":"pyo3","old_version":"0.29.0","new_version":"0.29.2","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.29.0 to 0.29.2.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.2\u003c/h2\u003e\n\u003cp\u003eThis patch fixes a regression in PyO3 0.29.1 which broke PyPy 3.11 compatibility (\u003ccode\u003e#[pyclass]\u003c/code\u003e types would crash PyPy on instance deletion).\u003c/p\u003e\n\u003cp\u003eA few further fixes have also landed with similar themes to PyO3 0.29.1: fixes to minor reference counting bugs, rough edges which would cause crashes, issues which would cause failed builds, and fixes to \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation.\u003c/p\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/ImFeH2\"\u003e\u003ccode\u003e@​ImFeH2\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Tpt\"\u003e\u003ccode\u003e@​Tpt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/WaterWhisperer\"\u003e\u003ccode\u003e@​WaterWhisperer\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.29.1\u003c/h2\u003e\n\u003cp\u003eThis patch is a stack of fixes for PyO3 0.29. Particular themes include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixes addressing build failures with newer interpreters such as GraalPy 3.13 and CPython 3.15\u003c/li\u003e\n\u003cli\u003eFixes resolving potential memory leaks inside \u003ccode\u003e#[pyclass]\u003c/code\u003e implementation internals\u003c/li\u003e\n\u003cli\u003eFixes to the new \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub machinery\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the fixes in these above themes and more, please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ImFeH2\"\u003e\u003ccode\u003e@​ImFeH2\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/IvanIsCoding\"\u003e\u003ccode\u003e@​IvanIsCoding\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/MatthieuDartiailh\"\u003e\u003ccode\u003e@​MatthieuDartiailh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/msimacek\"\u003e\u003ccode\u003e@​msimacek\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ratazzi\"\u003e\u003ccode\u003e@​ratazzi\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/rewitt94\"\u003e\u003ccode\u003e@​rewitt94\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/scott-griffiths\"\u003e\u003ccode\u003e@​scott-griffiths\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ShiroKSH\"\u003e\u003ccode\u003e@​ShiroKSH\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/tobni\"\u003e\u003ccode\u003e@​tobni\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Tpt\"\u003e\u003ccode\u003e@​Tpt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/WaterWhisperer\"\u003e\u003ccode\u003e@​WaterWhisperer\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.2] - 2026-08-05\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePYO3_USE_RAW_DYLIB=0\u003c/code\u003e opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6185\"\u003e#6185\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyO3 0.29 regression with failure to link under Cygwin / MSYS2. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6185\"\u003e#6185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix stubs generation for field getters (\u003ccode\u003e#[pyo3(get)]\u003c/code\u003e) when \u003ccode\u003eIntoPyObject\u003c/code\u003e is only implemented on references of the field type. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6276\"\u003e#6276\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e#[classmethod]\u003c/code\u003e magic methods receiving the instance instead of its type when invoked through a type slot. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6283\"\u003e#6283\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003epyo3_build_config::add_libpython_rpath_link_args\u003c/code\u003e emitting Unix-style rpath linker arguments on Windows and Cygwin. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6284\"\u003e#6284\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix PyO3 0.29.1 regression on PyPy causing crashes when deallocating \u003ccode\u003e#[pyclass]\u003c/code\u003e instances. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6294\"\u003e#6294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing trailing nul in Python 3.9 \u003ccode\u003e#[pyclass]\u003c/code\u003e docstrings. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6296\"\u003e#6296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix reference count leak of \u003ccode\u003e#[classattr]\u003c/code\u003e values created from \u003ccode\u003efn\u003c/code\u003e items. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6297\"\u003e#6297\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.29.1] - 2026-08-02\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse the inline definition of \u003ccode\u003ePy_TYPE\u003c/code\u003e in the unlimited API on 3.14+ \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6179\"\u003e#6179\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect pointer arithmetic in FFI definitions \u003ccode\u003ePyObject_GET_WEAKREFS_LISTPTR\u003c/code\u003e and \u003ccode\u003ePyHeapType_GET_MEMBERS\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6145\"\u003e#6145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix compilation error with \u003ccode\u003enightly\u003c/code\u003e feature on PyPy and GraalPy due to \u003ccode\u003e!Ungil\u003c/code\u003e implementations for FFI types not available on those platforms. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6146\"\u003e#6146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eappend_to_inittab\u003c/code\u003e and \u003ccode\u003ePyInit_\u0026lt;module\u0026gt;\u003c/code\u003e internal module definition corruption on 32-bit and big-endian platforms on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6150\"\u003e#6150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix return value of \u003ccode\u003ePyClassGuardMutSuper::as_super\u003c/code\u003e being scoped to the full guard lifetime, now the \u003ccode\u003e\u0026amp;mut\u003c/code\u003e borrow of the \u003ccode\u003eas_super()\u003c/code\u003e call. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6181\"\u003e#6181\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix builds for free-threaded interpreters older than 3.15 erroring with \u0026quot;cannot set a minimum Python version\u0026quot; when an \u003ccode\u003eabi3t-py3*\u003c/code\u003e feature is enabled and the configuration comes from \u003ccode\u003ePYO3_CONFIG_FILE\u003c/code\u003e, sysconfigdata or cross-compilation defaults. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6192\"\u003e#6192\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix a memory leak when deallocating \u003ccode\u003e#[pyclass(dict)]\u003c/code\u003e instances with a populated \u003ccode\u003e__dict__\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6198\"\u003e#6198\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix an abort inside a \u003ccode\u003e#[pyclass]\u003c/code\u003e's GC traversal when the traversal is stopped early. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6206\"\u003e#6206\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix reference cycles through the \u003ccode\u003e__dict__\u003c/code\u003e of a \u003ccode\u003e#[pyclass(dict)]\u003c/code\u003e never being collected. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6206\"\u003e#6206\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix building on GraalPy 3.13. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6208\"\u003e#6208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix reference count leak of references to \u003ccode\u003e#[pyclass]\u003c/code\u003e type objects held by their instances on instance deallocation. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6224\"\u003e#6224\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix a memory leak on Python 3.11 and 3.12 where creating an instance of a \u003ccode\u003e#[pyclass(dict)]\u003c/code\u003e class leaked one empty dict per instance. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6234\"\u003e#6234\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stubs to emit the arguments of many magic methods as positional-only to match runtime behavior, rather than positional-or-keyword. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6239\"\u003e#6239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stubs to emit the Python name rather than the Rust name for \u003ccode\u003e#[pyfunction(name = \u0026quot;...\u0026quot;)]\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6254\"\u003e#6254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexperimental-inspect\u003c/code\u003e generating invalid internal JSON when \u003ccode\u003e#[pymodule]\u003c/code\u003e members are gated by \u003ccode\u003e#[cfg]\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6255\"\u003e#6255\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e__inplace_concat__\u003c/code\u003e and \u003ccode\u003e__inplace_repeat__\u003c/code\u003e overriding \u003ccode\u003e__concat__\u003c/code\u003e and \u003ccode\u003e__repeat__\u003c/code\u003e when both were defined. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6260\"\u003e#6260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix conversion of out-of-range \u003ccode\u003etime::Duration\u003c/code\u003e values to return \u003ccode\u003eOverflowError\u003c/code\u003e instead of panicking. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6266\"\u003e#6266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stubs padding blank lines inside indented docstrings. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6270\"\u003e#6270\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/PyO3/pyo3/commit/a70d17f898df41b3d1632ee987f624f5222d8d39\"\u003e\u003ccode\u003ea70d17f\u003c/code\u003e\u003c/a\u003e release: 0.29.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/bd00e11864e2c21469285e9f80da734eaf15f412\"\u003e\u003ccode\u003ebd00e11\u003c/code\u003e\u003c/a\u003e fix backports.zoneinfo for uv install\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/7cbd144fd91b9c3f7fcb443965db33e196f41378\"\u003e\u003ccode\u003e7cbd144\u003c/code\u003e\u003c/a\u003e fix double-decref in PyPy in instance dealloc (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6294\"\u003e#6294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/e57fb6f5ac3308fc929e3416b006414423fcb3bb\"\u003e\u003ccode\u003ee57fb6f\u003c/code\u003e\u003c/a\u003e fix missing trailing nul on Python 3.9 \u003ccode\u003e#[pyclass]\u003c/code\u003e docstrings (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6296\"\u003e#6296\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d83693c7d75e1d379e1c38934bdd094f35bfe6b6\"\u003e\u003ccode\u003ed83693c\u003c/code\u003e\u003c/a\u003e fix refcount leak in \u003ccode\u003einitialize_tp_dict\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6297\"\u003e#6297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/48ebbd86a6e7106916a47253730d26aaf76928f4\"\u003e\u003ccode\u003e48ebbd8\u003c/code\u003e\u003c/a\u003e fix: skip libpython rpath args on Windows and Cygwin (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6284\"\u003e#6284\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/bd73377d4fea3d72f64760d60756b8a23a7cb097\"\u003e\u003ccode\u003ebd73377\u003c/code\u003e\u003c/a\u003e fix: pass class to classmethod magic methods (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6283\"\u003e#6283\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/af8d149449f7b9a065bf0e9a5d00b71a2863d555\"\u003e\u003ccode\u003eaf8d149\u003c/code\u003e\u003c/a\u003e Restore pyo3-introspection license files (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6289\"\u003e#6289\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/0120c59140c9e9fb55aa3160dd45d1c6399a5b8b\"\u003e\u003ccode\u003e0120c59\u003c/code\u003e\u003c/a\u003e unblock CI via a uv constraint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6295\"\u003e#6295\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/3161efcb222e3cb3ecf7c4ab29f7ad3f7a42ec70\"\u003e\u003ccode\u003e3161efc\u003c/code\u003e\u003c/a\u003e build(deps): bump CodSpeedHQ/action from 4 to 5.0.1 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6286\"\u003e#6286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.0...v0.29.2\"\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=pyo3\u0026package-manager=cargo\u0026previous-version=0.29.0\u0026new-version=0.29.2)](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 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/polarmutex/beancount-language-server/pull/943","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/polarmutex%2Fbeancount-language-server/issues/943","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/943/packages"},{"uuid":"5574695454","node_id":"PR_kwDOTiwXhc8AAAABFApXgA","number":2,"state":"closed","title":"Bump pyo3 from 0.27.2 to 0.29.0 in /native/pyside6_webusb_accel","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-09-26T01:18:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-24T21:19:06.000Z","updated_at":"2026-09-26T01:18:52.000Z","time_to_close":100785,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pyo3","old_version":"0.27.2","new_version":"0.29.0","repository_url":"https://github.com/pyo3/pyo3"}],"path":"/native/pyside6_webusb_accel","ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.27.2 to 0.29.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.0\u003c/h2\u003e\n\u003cp\u003eThis release is a relatively large release with improvements across many areas of PyO3's API.\u003c/p\u003e\n\u003ch3\u003eBuild and packaging changes\u003c/h3\u003e\n\u003cp\u003eThis release brings full support for Python 3.15 beta. We encourage downstream projects to begin testing and distributing Python 3.15 beta wheels so that the ecosystem can prepare for the 3.15 final release later in the year.\u003c/p\u003e\n\u003cp\u003eAlongside Python 3.15 support comes support for its new \u0026quot;abi3t\u0026quot; stable ABI which supports both free-threaded and gil-enabled Python builds. For projects distributing stable ABI wheels, we recommend distributing (for each OS/architecture) an abi3 wheel built for your minimum supported Python version, a 3.14t version-specific wheel for free-threaded Python 3.14, and an abi3t wheel to support Python 3.15 (and future versions).\u003c/p\u003e\n\u003cp\u003eSupport for Python 3.7 has been dropped. Support for Python 3.13t, the first experimental free-threaded release of CPython, has also been dropped. 3.14t (and soon 3.15t) is more stable, performant, and the starting point for CPython's own declaration of \u0026quot;support\u0026quot; for the free-threaded build.\u003c/p\u003e\n\u003cp\u003eThe PyO3 build process (via the \u003ccode\u003epyo3-build-config\u003c/code\u003e crate) has been adjusted to reduce the cost of rebuilds when the environment used to detect the Python interpreter changes; \u003ccode\u003epyo3-build-config\u003c/code\u003e and \u003ccode\u003epyo3-macros\u003c/code\u003e will no longer be rebuilt in such cases (although \u003ccode\u003epyo3-ffi\u003c/code\u003e and crates downstream of it still will be rebuilt). As a consequence the \u003ccode\u003epyo3_build_config\u003c/code\u003e APIs now require crates to have a direct dependency on \u003ccode\u003epyo3\u003c/code\u003e or \u003ccode\u003epyo3-ffi\u003c/code\u003e. We hope to continue to reduce rebuild frequency and cost in a future PyO3 release.\u003c/p\u003e\n\u003ch3\u003eSecurity updates\u003c/h3\u003e\n\u003cp\u003eWith the recent boom in AI-assisted security scanning, PyO3 has inevitably had several correctness issues exposed by AI-assisted scanning.\u003c/p\u003e\n\u003cp\u003eIn particular, PyO3 0.29 fixes two security vulnerabilities we will be releasing to the RustSec Advisory Database imminently:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMissing \u003ccode\u003eSync\u003c/code\u003e bound on \u003ccode\u003ePyCFunction::new_closure\u003c/code\u003e closures\u003c/li\u003e\n\u003cli\u003ePossible out of bounds read in \u003ccode\u003eBoundTupleIterator::nth_back\u003c/code\u003e and \u003ccode\u003eBoundListIterator::nth_back\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAny code using the above APIs is advised to update as soon as possible.\u003c/p\u003e\n\u003cp\u003eThis release also contains several other minor breaking changes to close soundness holes uncovered by AI-assisted scanning. Our assessment as maintainers was that, excluding the two vulnerability cases listed above, these correctness issues would likely have crashed immediately upon user testing rather than leading to attacker-exploitable pathways. We nevertheless wanted to see them closed without the usual deprecation cycle. These cases are noted in the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eOther major themes in this release\u003c/h3\u003e\n\u003cp\u003eNew in this release is a CLI in \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate type stubs along with the \u003ccode\u003eexperimental-inspect\u003c/code\u003e feature. Downstream, \u003ccode\u003ematurin\u003c/code\u003e has also gained support to generate type stubs using the feature. The feature is reaching a point where substantial amount of type stubs can be generated automatically. We would like to encourage users to begin using this feature and helping us find what functionality is missing, with a hope we can declare its API stable given sufficient feedback.\u003c/p\u003e\n\u003cp\u003eA substantial amount of effort has been invested in \u003ccode\u003epyo3-ffi\u003c/code\u003e as part of the process of extending it with 3.15's new APIs. There have been many missing APIs from older Python versions added. There have also been a number of fixes to incorrect definitions (these are breaking changes, but also necessary for correctness); we hope there will be far fewer such cases in the future due to more comprehensive checking added to PyO3's CI. Finally, many private CPython APIs (those with \u003ccode\u003e_Py\u003c/code\u003e underscore-named prefix) have been removed from \u003ccode\u003epyo3-ffi\u003c/code\u003e's public API.\u003c/p\u003e\n\u003ch3\u003eIn closing\u003c/h3\u003e\n\u003cp\u003eThere are also many other incremental improvements, bug fixes and smaller features; full detail can be found in the \u003ca href=\"https://pyo3.rs/v0.29.0/changelog.html\"\u003eCHANGELOG\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003ePlease consult the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e for help upgrading.\u003c/p\u003e\n\u003cp\u003eThank you to everyone who contributed code, documentation, design ideas, bug reports, and feedback. The following contributors' commits are included in this release:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Alc-Alc\"\u003e\u003ccode\u003e@​Alc-Alc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/anuraaga\"\u003e\u003ccode\u003e@​anuraaga\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/BD103\"\u003e\u003ccode\u003e@​BD103\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Cheukting\"\u003e\u003ccode\u003e@​Cheukting\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ChristopherRabotin\"\u003e\u003ccode\u003e@​ChristopherRabotin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/clin1234\"\u003e\u003ccode\u003e@​clin1234\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/codeguru42\"\u003e\u003ccode\u003e@​codeguru42\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-11\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport the new PEP 803 abi3t ABI with new \u003ccode\u003eabi3t\u003c/code\u003e and \u003ccode\u003eabi3t-py315\u003c/code\u003e features. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-macros-backend\u003c/code\u003e no longer depends on \u003ccode\u003epyo3-build-config\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5809\"\u003e#5809\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.13t (3.14t and above continue to be supported; CPython declared free-threading supported starting with Python 3.14). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5865\"\u003e#5865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.7. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5912\"\u003e#5912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExtend range of supported versions of \u003ccode\u003ehashbrown\u003c/code\u003e optional dependency to include version 0.17. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5973\"\u003e#5973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport Python 3.15.0b1. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6014\"\u003e#6014\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-ffi\u003c/code\u003e is now \u003ccode\u003eno_std\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6022\"\u003e#6022\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_traceback\u003c/code\u003e to set the traceback of an exception object. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5349\"\u003e#5349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUnicodeDecodeError::new_err_from_utf8\u003c/code\u003e to create a \u003ccode\u003ePyErr\u003c/code\u003e from a \u003ccode\u003estr::Utf8Error\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5668\"\u003e#5668\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: implement \u003ccode\u003eINPUT_TYPE\u003c/code\u003e and \u003ccode\u003eOUTPUT_TYPE\u003c/code\u003e on optional third-party crate conversions. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5770\"\u003e#5770\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: include doc comments in generated stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5782\"\u003e#5782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::PythonAbi\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiKind\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiBuilder\u003c/code\u003e, \u003ccode\u003epyo3_build_config::InterpreterConfig::target_abi\u003c/code\u003e, and \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder::target_abi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBorrowed::get\u003c/code\u003e as an equivalent to \u003ccode\u003eBound::get\u003c/code\u003e and \u003ccode\u003ePy::get\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5849\"\u003e#5849\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyFrame::new\u003c/code\u003e, \u003ccode\u003ePyTraceBack::new\u003c/code\u003e, and \u003ccode\u003ePyFrameMethods::line_number\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5857\"\u003e#5857\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUntypedBuffer::obj\u003c/code\u003e to retrieve the Python object owning the buffer. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5870\"\u003e#5870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::new_with_value\u003c/code\u003e and \u003ccode\u003ePyCapsule::new_with_value_and_destructor\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5881\"\u003e#5881\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_context\u003c/code\u003e and \u003ccode\u003ePyErr::context\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a small CLI to \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5904\"\u003e#5904\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePython::version_str\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5921\"\u003e#5921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eTryFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003ePyRef\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyRefMut\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyClassGuard\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u0026lt;T\u0026gt;\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003eBound\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePy\u0026lt;T\u0026gt;\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyDictMethods::set_default\u003c/code\u003e and \u003ccode\u003ePyDictMethods::set_default_ref\u003c/code\u003e to allow atomically setting default values in a PyDict. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5955\"\u003e#5955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003ePyFrameMethods::outer|code|var|builtins|globals|locals\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5967\"\u003e#5967\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u003c/code\u003e conversions for \u003ccode\u003ePyErr\u003c/code\u003e from \u003ccode\u003estd::time::TryFromFloatSecsError\u003c/code\u003e, \u003ccode\u003estd::time::SystemTimeError\u003c/code\u003e, \u003ccode\u003estd::path::StripPrefixError\u003c/code\u003e, \u003ccode\u003estd::env::JoinPathsError\u003c/code\u003e, \u003ccode\u003estd::char::ParseCharError\u003c/code\u003e, and \u003ccode\u003estd::char::CharTryFromError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6001\"\u003e#6001\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6034\"\u003e#6034\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::import_pointer\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6066\"\u003e#6066\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6073\"\u003e#6073\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyListMethods::get_item_unchecked\u003c/code\u003e, \u003ccode\u003ePyTupleMethods::get_item_unchecked\u003c/code\u003e, and \u003ccode\u003ePyTupleMethods::get_borrowed_item_unchecked\u003c/code\u003e on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6075\"\u003e#6075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapSuper\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6104\"\u003e#6104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e to \u003ccode\u003epyo3::prelude\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eDebug\u003c/code\u003e impls for \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnable extending \u003ccode\u003ePyDateTime\u003c/code\u003e, \u003ccode\u003ePyDate\u003c/code\u003e, \u003ccode\u003ePyTime\u003c/code\u003e, \u003ccode\u003ePyDelta\u003c/code\u003e and \u003ccode\u003ePyTzInfo\u003c/code\u003e on abi3 with python 3.12+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6115\"\u003e#6115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyFunction\u003c/code\u003e available on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6117\"\u003e#6117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFFI definitions:\n\u003cul\u003e\n\u003cli\u003eAdded FFI definitions \u003ccode\u003ePyUnstable_Object_IsUniquelyReferenced\u003c/code\u003e, \u003ccode\u003ePyUnstable_Object_IsUniquelyReferencedTemporary\u003c/code\u003e, \u003ccode\u003ePyUnstable_EnableTryIncref\u003c/code\u003e, and \u003ccode\u003ePyUnstable_TryIncref\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5828\"\u003e#5828\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003effi::PyErr_GetHandledException\u003c/code\u003e and \u003ccode\u003effi::PyErr_SetHandledException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePy_HASH_SIPHASH13\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5891\"\u003e#5891\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePyStructSequence_UnnamedField\u003c/code\u003e constant on Python 3.9 and up (or 3.11 with abi3 features). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5892\"\u003e#5892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyUnstable_InterpreterFrame_GetCode\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLasti\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLine\u003c/code\u003e, and \u003ccode\u003ePyUnstable_ExecutableKinds\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5932\"\u003e#5932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyMarshal_WriteLongToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_WriteObjectToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadLongFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadShortFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadObjectFromFile\u003c/code\u003e, and \u003ccode\u003ePyMarshal_ReadLastObjectFromFile\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5934\"\u003e#5934\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyObject_GetAIter\u003c/code\u003e, \u003ccode\u003ePyAIter_Check\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyStringWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItem\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItemString\u003c/code\u003e, \u003ccode\u003ePySequence_ITEM\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_ITEM\u003c/code\u003e, and \u003ccode\u003ePySequence_Fast_ITEMS\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5942\"\u003e#5942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ecompat::PyObject_HasAttrWithError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5944\"\u003e#5944\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyDict_SetDefault\u003c/code\u003e, \u003ccode\u003ePyDict_SetDefaultRef\u003c/code\u003e, \u003ccode\u003ePyDict_ContainsString\u003c/code\u003e, \u003ccode\u003ePyDict_Pop\u003c/code\u003e, \u003ccode\u003ePyDict_PopString\u003c/code\u003e, \u003ccode\u003ePyDict_ClearWatcher\u003c/code\u003e, \u003ccode\u003ePyDict_Watch\u003c/code\u003e, \u003ccode\u003ePyDict_Unwatch\u003c/code\u003e, and \u003ccode\u003ePyFrozenDict_New\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5947\"\u003e#5947\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\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/PyO3/pyo3/commit/0f90242785fe0ce5e4e67c1da5ed361d410dbf8c\"\u003e\u003ccode\u003e0f90242\u003c/code\u003e\u003c/a\u003e release: 0.29.0 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6107\"\u003e#6107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/cd128ed50e6fffc4e49a08c149599a3b8bd21d5b\"\u003e\u003ccode\u003ecd128ed\u003c/code\u003e\u003c/a\u003e doc: mention abi3t, python3t.dll, and abi3t_compat folder in FAQ (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6124\"\u003e#6124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/7e2ef18b939488c446c9bcc1ed550e3ce22da5bd\"\u003e\u003ccode\u003e7e2ef18\u003c/code\u003e\u003c/a\u003e Avoid type checks in methods where CPython already guarantees the received ty...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f9301990e75e9f132aa3d4bf96a98d3abfac1c04\"\u003e\u003ccode\u003ef930199\u003c/code\u003e\u003c/a\u003e docs: additional detail in migration guide for 0.29 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6123\"\u003e#6123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91ab0d1b9bf26116d1a9fd8d833c32f22259da0b\"\u003e\u003ccode\u003e91ab0d1\u003c/code\u003e\u003c/a\u003e Enable Windows abi3t tests (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6106\"\u003e#6106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/fe0fdd518fb238ebf07480fde3c54a75041a1820\"\u003e\u003ccode\u003efe0fdd5\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ePyLong*\u003c/code\u003e API (3.14+) (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6016\"\u003e#6016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f41b1dfaf4fecce0edc6417a317671bdec593d07\"\u003e\u003ccode\u003ef41b1df\u003c/code\u003e\u003c/a\u003e Hang when reattaching after detach during shutdown (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6085\"\u003e#6085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/5ae66a859c2575b2b0ce0b2982f55388561513e6\"\u003e\u003ccode\u003e5ae66a8\u003c/code\u003e\u003c/a\u003e Fix double import on RustPython (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6122\"\u003e#6122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/ad4a510dddba60ac1887800365894839f7ba5a9c\"\u003e\u003ccode\u003ead4a510\u003c/code\u003e\u003c/a\u003e PyFunction: enable some extra tests with abi3 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6118\"\u003e#6118\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c79ac0ea2d7b751ea0191b4a5462d1de8f824728\"\u003e\u003ccode\u003ec79ac0e\u003c/code\u003e\u003c/a\u003e ci: Add test for minimum supported debug build of Python (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5852\"\u003e#5852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.27.2...v0.29.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=pyo3\u0026package-manager=cargo\u0026previous-version=0.27.2\u0026new-version=0.29.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 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)\nYou can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/steck0714/Pyside6-webusb/network/alerts).\n\n\u003c/details\u003e","html_url":"https://github.com/steck0714/Pyside6-webusb/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/steck0714%2FPyside6-webusb/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"},{"uuid":"5518979442","node_id":"PR_kwDOSdpCCs8AAAABEUfXew","number":67,"state":"closed","title":"chore(deps): bump the rust-minor-patch group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-10-01T10:32:41.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-20T16:17:46.000Z","updated_at":"2026-10-01T10:32:43.000Z","time_to_close":929695,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"rust-minor-patch","update_count":21,"packages":[{"name":"anyhow","old_version":"1.0.103","new_version":"1.0.104","repository_url":"https://github.com/dtolnay/anyhow"},{"name":"async-compression","old_version":"0.4.42","new_version":"0.4.46","repository_url":"https://github.com/Nullus157/async-compression"},{"name":"async-trait","old_version":"0.1.89","new_version":"0.1.92","repository_url":"https://github.com/dtolnay/async-trait"},{"name":"bitflags","old_version":"2.13.0","new_version":"2.13.2","repository_url":"https://github.com/bitflags/bitflags"},{"name":"blake3","old_version":"1.8.5","new_version":"1.8.7","repository_url":"https://github.com/BLAKE3-team/BLAKE3"},{"name":"bytes","old_version":"1.12.0","new_version":"1.12.1","repository_url":"https://github.com/tokio-rs/bytes"},{"name":"camino","old_version":"1.2.4","new_version":"1.2.5","repository_url":"https://github.com/camino-rs/camino"},{"name":"clap","old_version":"4.5.60","new_version":"4.6.6","repository_url":"https://github.com/clap-rs/clap"},{"name":"data-encoding","old_version":"2.11.0","new_version":"2.11.1","repository_url":"https://github.com/ia0/data-encoding"},{"name":"flate2","old_version":"1.1.9","new_version":"1.1.10","repository_url":"https://github.com/rust-lang/flate2-rs"},{"name":"futures","old_version":"0.3.32","new_version":"0.3.34","repository_url":"https://github.com/rust-lang/futures-rs"},{"name":"globset","old_version":"0.4.18","new_version":"0.4.20","repository_url":"https://github.com/BurntSushi/ripgrep"},{"name":"hyper","old_version":"1.10.1","new_version":"1.11.1","repository_url":"https://github.com/hyperium/hyper"},{"name":"libc","old_version":"0.2.186","new_version":"0.2.189","repository_url":"https://github.com/rust-lang/libc"},{"name":"pyo3","old_version":"0.29.0","new_version":"0.29.2","repository_url":"https://github.com/pyo3/pyo3"},{"name":"regex","old_version":"1.12.4","new_version":"1.13.1","repository_url":"https://github.com/rust-lang/regex"},{"name":"serde","old_version":"1.0.228","new_version":"1.0.229","repository_url":"https://github.com/serde-rs/serde"},{"name":"serde_json","old_version":"1.0.150","new_version":"1.0.151","repository_url":"https://github.com/serde-rs/json"},{"name":"serde_repr","old_version":"0.1.20","new_version":"0.1.21","repository_url":"https://github.com/dtolnay/serde-repr"},{"name":"tokio-util","old_version":"0.7.18","new_version":"0.7.19","repository_url":"https://github.com/tokio-rs/tokio"},{"name":"which","old_version":"8.0.4","new_version":"8.0.6","repository_url":"https://github.com/harryfei/which-rs"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the rust-minor-patch group with 21 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [anyhow](https://github.com/dtolnay/anyhow) | `1.0.103` | `1.0.104` |\n| [async-compression](https://github.com/Nullus157/async-compression) | `0.4.42` | `0.4.46` |\n| [async-trait](https://github.com/dtolnay/async-trait) | `0.1.89` | `0.1.92` |\n| [bitflags](https://github.com/bitflags/bitflags) | `2.13.0` | `2.13.2` |\n| [blake3](https://github.com/BLAKE3-team/BLAKE3) | `1.8.5` | `1.8.7` |\n| [bytes](https://github.com/tokio-rs/bytes) | `1.12.0` | `1.12.1` |\n| [camino](https://github.com/camino-rs/camino) | `1.2.4` | `1.2.5` |\n| [clap](https://github.com/clap-rs/clap) | `4.5.60` | `4.6.6` |\n| [data-encoding](https://github.com/ia0/data-encoding) | `2.11.0` | `2.11.1` |\n| [flate2](https://github.com/rust-lang/flate2-rs) | `1.1.9` | `1.1.10` |\n| [futures](https://github.com/rust-lang/futures-rs) | `0.3.32` | `0.3.34` |\n| [globset](https://github.com/BurntSushi/ripgrep) | `0.4.18` | `0.4.20` |\n| [hyper](https://github.com/hyperium/hyper) | `1.10.1` | `1.11.1` |\n| [libc](https://github.com/rust-lang/libc) | `0.2.186` | `0.2.189` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.0` | `0.29.2` |\n| [regex](https://github.com/rust-lang/regex) | `1.12.4` | `1.13.1` |\n| [serde](https://github.com/serde-rs/serde) | `1.0.228` | `1.0.229` |\n| [serde_json](https://github.com/serde-rs/json) | `1.0.150` | `1.0.151` |\n| [serde_repr](https://github.com/dtolnay/serde-repr) | `0.1.20` | `0.1.21` |\n| [tokio-util](https://github.com/tokio-rs/tokio) | `0.7.18` | `0.7.19` |\n| [which](https://github.com/harryfei/which-rs) | `8.0.4` | `8.0.6` |\n\n\nUpdates `anyhow` from 1.0.103 to 1.0.104\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/anyhow/releases\"\u003eanyhow's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.0.104\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003esyn\u003c/code\u003e dev-dependency to version 3\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/dtolnay/anyhow/commit/1dbe1862aae650423e3361fbd20b7d17c5109cc3\"\u003e\u003ccode\u003e1dbe186\u003c/code\u003e\u003c/a\u003e Release 1.0.104\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/anyhow/commit/f6479f8e5e10761d7fecde0970cff363dc644d92\"\u003e\u003ccode\u003ef6479f8\u003c/code\u003e\u003c/a\u003e Update to syn 3\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dtolnay/anyhow/compare/1.0.103...1.0.104\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `async-compression` from 0.4.42 to 0.4.46\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Nullus157/async-compression/releases\"\u003easync-compression's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003easync-compression-v0.4.46\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReturn UnexpectedEof when deflate64 does not progress (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/pull/483\"\u003e#483\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003easync-compression-v0.4.45\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(deps)\u003c/em\u003e update zstd requirement from 0.13 to 0.14 (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/pull/481\"\u003e#481\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003easync-compression-v0.4.44\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdated the following local packages: compression-core, compression-codecs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003easync-compression-v0.4.43\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix hang when decoding a corrupt subsequent zstd frame (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/pull/470\"\u003e#470\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/Nullus157/async-compression/commit/3f2a60041bdb51c087166893504b35f7d007e0d1\"\u003e\u003ccode\u003e3f2a600\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/484\"\u003e#484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/b22cd694cf6cb2f4753c8cae0bfdebd4b78b6fe3\"\u003e\u003ccode\u003eb22cd69\u003c/code\u003e\u003c/a\u003e Return UnexpectedEof when deflate64 does not progress (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/483\"\u003e#483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/d8c1b476bda99a05c4cc67af1ef45c2dc2405926\"\u003e\u003ccode\u003ed8c1b47\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/482\"\u003e#482\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/9ffc96c79755cb24d80c1e15507d4ae6d795e9de\"\u003e\u003ccode\u003e9ffc96c\u003c/code\u003e\u003c/a\u003e chore(deps): update zstd requirement from 0.13 to 0.14 (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/481\"\u003e#481\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/a867d186019e1df2d29859be9478b77661ba3484\"\u003e\u003ccode\u003ea867d18\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/478\"\u003e#478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/ee526f779c01200a4714743d1ac1b7f0cb511b24\"\u003e\u003ccode\u003eee526f7\u003c/code\u003e\u003c/a\u003e Fix safety contract on assume_init, use asserts (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/479\"\u003e#479\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/1de4b45697f05daafdd0104a959faed5e1021c16\"\u003e\u003ccode\u003e1de4b45\u003c/code\u003e\u003c/a\u003e Enforce WriteBuffer bounds checks in release builds (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/477\"\u003e#477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/3a711b04f31cad68cccf0d09d3115b38556fc0da\"\u003e\u003ccode\u003e3a711b0\u003c/code\u003e\u003c/a\u003e ci: pin actions (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/473\"\u003e#473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/6fd95cff631d19157c4533b717939f25971d50b8\"\u003e\u003ccode\u003e6fd95cf\u003c/code\u003e\u003c/a\u003e chore(async-compression): release v0.4.43 (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/471\"\u003e#471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/25e903d013144c57a9a8507a6a2adef61d813908\"\u003e\u003ccode\u003e25e903d\u003c/code\u003e\u003c/a\u003e Fix hang when decoding a corrupt subsequent zstd frame (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/470\"\u003e#470\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Nullus157/async-compression/compare/async-compression-v0.4.42...async-compression-v0.4.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `async-trait` from 0.1.89 to 0.1.92\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/async-trait/releases\"\u003easync-trait's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.1.92\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eResolve double_must_use clippy lint in generated code (\u003ca href=\"https://redirect.github.com/dtolnay/async-trait/issues/303\"\u003e#303\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.1.91\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to syn 3 (\u003ca href=\"https://redirect.github.com/dtolnay/async-trait/issues/299\"\u003e#299\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix mutability for by-reference receivers (\u003ca href=\"https://redirect.github.com/dtolnay/async-trait/issues/301\"\u003e#301\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.1.90\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e(yanked)\u003c/em\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/82e7e9edd60f622294373a23c0ce9c0077ad0263\"\u003e\u003ccode\u003e82e7e9e\u003c/code\u003e\u003c/a\u003e Release 0.1.92\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/9a35cb87f9366cd992bbc00d430e1b5fe1aa0cdd\"\u003e\u003ccode\u003e9a35cb8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/async-trait/issues/303\"\u003e#303\u003c/a\u003e from dtolnay/mustuse\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/875ceecb100bab2cf369178633b4791336d92b75\"\u003e\u003ccode\u003e875ceec\u003c/code\u003e\u003c/a\u003e Resolve double_must_use clippy lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/62993a57bc6a8d5bd3de23fbae48cede333cb925\"\u003e\u003ccode\u003e62993a5\u003c/code\u003e\u003c/a\u003e Raise minimum tested compiler to rust 1.88\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/d049ee02a2d50b72e03d07f06311e23bf5b512a8\"\u003e\u003ccode\u003ed049ee0\u003c/code\u003e\u003c/a\u003e Release 0.1.91\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/7a0961f275432c40cc5e7aa011362e4b50d763b1\"\u003e\u003ccode\u003e7a0961f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/async-trait/issues/301\"\u003e#301\u003c/a\u003e from dtolnay/mutability\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/740f86f23d176229011f2389c8a206ef5ba547e7\"\u003e\u003ccode\u003e740f86f\u003c/code\u003e\u003c/a\u003e Ignore mut_mut pedantic clippy lint in test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/4699cd320a8aaaf06a2a369cb9e1f2964b14b71c\"\u003e\u003ccode\u003e4699cd3\u003c/code\u003e\u003c/a\u003e Fix mutability for by-reference receivers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/6dd3573df95878d34fcfc0ab9c242aeab3140f82\"\u003e\u003ccode\u003e6dd3573\u003c/code\u003e\u003c/a\u003e Add regression test for issue 300\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/2371797a3938808bd7e1f4f9abd0eed51bd99634\"\u003e\u003ccode\u003e2371797\u003c/code\u003e\u003c/a\u003e Release 0.1.90\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dtolnay/async-trait/compare/0.1.89...0.1.92\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bitflags` from 2.13.0 to 2.13.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bitflags/bitflags/releases\"\u003ebitflags's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.13.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFlags: adjust order of elements in manual implementation example by \u003ca href=\"https://github.com/DanielEScherzer\"\u003e\u003ccode\u003e@​DanielEScherzer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/494\"\u003ebitflags/bitflags#494\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRe-pull const declarations outside of nested const by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/496\"\u003ebitflags/bitflags#496\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 2.13.2 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/497\"\u003ebitflags/bitflags#497\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bitflags/bitflags/compare/2.13.1...2.13.2\"\u003ehttps://github.com/bitflags/bitflags/compare/2.13.1...2.13.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e2.13.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLower the LLVM IR output of the generated output by \u003ca href=\"https://github.com/bolshoytoster\"\u003e\u003ccode\u003e@​bolshoytoster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/492\"\u003ebitflags/bitflags#492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 2.13.1 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/493\"\u003ebitflags/bitflags#493\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/bolshoytoster\"\u003e\u003ccode\u003e@​bolshoytoster\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/492\"\u003ebitflags/bitflags#492\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bitflags/bitflags/compare/2.13.0...2.13.1\"\u003ehttps://github.com/bitflags/bitflags/compare/2.13.0...2.13.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/bitflags/bitflags/blob/main/CHANGELOG.md\"\u003ebitflags's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.13.2\u003c/h1\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFlags: adjust order of elements in manual implementation example by \u003ca href=\"https://github.com/DanielEScherzer\"\u003e\u003ccode\u003e@​DanielEScherzer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/494\"\u003ebitflags/bitflags#494\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRe-pull const declarations outside of nested const by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/496\"\u003ebitflags/bitflags#496\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bitflags/bitflags/compare/2.13.1...2.13.2\"\u003ehttps://github.com/bitflags/bitflags/compare/2.13.1...2.13.2\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003e2.13.1\u003c/h1\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLower the LLVM IR output of the generated output by \u003ca href=\"https://github.com/bolshoytoster\"\u003e\u003ccode\u003e@​bolshoytoster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/492\"\u003ebitflags/bitflags#492\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/bolshoytoster\"\u003e\u003ccode\u003e@​bolshoytoster\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/492\"\u003ebitflags/bitflags#492\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bitflags/bitflags/compare/2.13.0...2.13.1\"\u003ehttps://github.com/bitflags/bitflags/compare/2.13.0...2.13.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/80ce9b545acb0bd42150695fc351889cac1d8eb4\"\u003e\u003ccode\u003e80ce9b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/bitflags/bitflags/issues/497\"\u003e#497\u003c/a\u003e from bitflags/cargo/2.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/5822493e21489d141324ca1787a62a21d1e2f667\"\u003e\u003ccode\u003e5822493\u003c/code\u003e\u003c/a\u003e prepare for 2.13.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/48f4f1a85e72f019fe64ca18fc4cbfd04e3c6ff9\"\u003e\u003ccode\u003e48f4f1a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/bitflags/bitflags/issues/496\"\u003e#496\u003c/a\u003e from bitflags/fix/rustc-ice\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/2c0b042c1515c0d6adc94c00d5d730c1cca7aca3\"\u003e\u003ccode\u003e2c0b042\u003c/code\u003e\u003c/a\u003e re-pull const declarations outside of nested const\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/c3f8d31d59f3ba8c05833fb322ecab8a2cb88060\"\u003e\u003ccode\u003ec3f8d31\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/bitflags/bitflags/issues/494\"\u003e#494\u003c/a\u003e from DanielEScherzer/flags-docs-example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/0fc376241b05b5da46076f82db8fb1a0bb3be448\"\u003e\u003ccode\u003e0fc3762\u003c/code\u003e\u003c/a\u003e Flags: adjust order of elements in manual implementation example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/f92a2921b41644b02ca5d50a6ace542e309e6a6f\"\u003e\u003ccode\u003ef92a292\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/bitflags/bitflags/issues/493\"\u003e#493\u003c/a\u003e from bitflags/cargo/2.13.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/c1271c5dc836456340be6030efefbb758e7a0730\"\u003e\u003ccode\u003ec1271c5\u003c/code\u003e\u003c/a\u003e prepare for 2.13.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/e077c4a679706661af508a91cfd96c6a7c4ac2d2\"\u003e\u003ccode\u003ee077c4a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/bitflags/bitflags/issues/492\"\u003e#492\u003c/a\u003e from bolshoytoster/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/75d1be4a8d98c1ef786da6d3e221d30dfb376114\"\u003e\u003ccode\u003e75d1be4\u003c/code\u003e\u003c/a\u003e Bless compile fail stderr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/bitflags/bitflags/compare/2.13.0...2.13.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `blake3` from 1.8.5 to 1.8.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/releases\"\u003eblake3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.7\u003c/h2\u003e\n\u003cp\u003eversion 1.8.7\u003c/p\u003e\n\u003cp\u003eChanges since 1.8.6:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemove the \u003ccode\u003earrayref\u003c/code\u003e dependency. Unfortunately the crates.io owner\nwas compromised.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.6\u003c/h2\u003e\n\u003cp\u003eversion 1.8.6\u003c/p\u003e\n\u003cp\u003eChanges since 1.8.5:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eupdate_mmap\u003c/code\u003e and \u003ccode\u003eupdate_mmap_rayon\u003c/code\u003e (and by extension \u003ccode\u003eb3sum\u003c/code\u003e) now\nuse \u003ccode\u003eseek\u003c/code\u003e rather than \u003ccode\u003emetadata\u003c/code\u003e to get the length of a file/mapping,\nand they tolerate \u003ccode\u003emmap\u003c/code\u003e failures. That means \u003ccode\u003eb3sum\u003c/code\u003e will now memory\nmap e.g. Linux block devices, which support mapping despite reporting\nlength 0 in \u003ccode\u003emetadata\u003c/code\u003e. Hashing \u003ccode\u003eNUL\u003c/code\u003e files on Windows also works now,\nwhere previously it was an error unless you used \u003ccode\u003e--no-mmap\u003c/code\u003e or \u003ccode\u003e\u0026lt;\u003c/code\u003e.\nThis change was originally proposed by \u003ca href=\"https://github.com/nabijaczleweli\"\u003e\u003ccode\u003e@​nabijaczleweli\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/f3149ec5bb5449af877ba20377a11008ff499fa2\"\u003e\u003ccode\u003ef3149ec\u003c/code\u003e\u003c/a\u003e version 1.8.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/b65bcb71d1a38d0ef172f3708f75365a3d7a5856\"\u003e\u003ccode\u003eb65bcb7\u003c/code\u003e\u003c/a\u003e add #[allow(deprecated)] annotations to fix nightly/beta warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/483a2203a8cc3a6f2c0da9070ca04b011f44b534\"\u003e\u003ccode\u003e483a220\u003c/code\u003e\u003c/a\u003e fix warnings related to not using MAX constants\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/ba02549ebc81a9cce8eb1832b128c9b4cc8aa9c9\"\u003e\u003ccode\u003eba02549\u003c/code\u003e\u003c/a\u003e Codex: remove \u003ccode\u003earrayref\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/77b257eee7da5cd608eaf6be8343d3a4c9776af2\"\u003e\u003ccode\u003e77b257e\u003c/code\u003e\u003c/a\u003e version 1.8.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/83b1746e7c42e5b3d228c81ba1ccb9b767dc5e2c\"\u003e\u003ccode\u003e83b1746\u003c/code\u003e\u003c/a\u003e use \u003ccode\u003eseek\u003c/code\u003e instead of \u003ccode\u003emetadata\u003c/code\u003e to establish mmap length (\u003ca href=\"https://redirect.github.com/BLAKE3-team/BLAKE3/issues/570\"\u003e#570\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/9eac279fd71b79ad9e897a4cffb23ee64acfb6df\"\u003e\u003ccode\u003e9eac279\u003c/code\u003e\u003c/a\u003e use vswhere to find Visual Studio in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/fc3d0e98e840631c001837363bba77a4f64c48b9\"\u003e\u003ccode\u003efc3d0e9\u003c/code\u003e\u003c/a\u003e Fix path to Visual Studio toolchain in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/8aa5145039b972ba30e98e788752d37d14568824\"\u003e\u003ccode\u003e8aa5145\u003c/code\u003e\u003c/a\u003e a few more colons\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/6bb977357b87755c14594ffce6f7133f9f6a8d78\"\u003e\u003ccode\u003e6bb9773\u003c/code\u003e\u003c/a\u003e use cargo:: build script syntax\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/compare/1.8.5...1.8.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bytes` from 1.12.0 to 1.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tokio-rs/bytes/releases\"\u003ebytes's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eBytes v1.12.1\u003c/h2\u003e\n\u003ch1\u003e1.12.1 (July 8th, 2026)\u003c/h1\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eProperly handle when \u003ccode\u003eBox::new\u003c/code\u003e panics (\u003ca href=\"https://redirect.github.com/tokio-rs/bytes/issues/837\"\u003e#837\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md\"\u003ebytes's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.12.1 (July 8th, 2026)\u003c/h1\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eProperly handle when \u003ccode\u003eBox::new\u003c/code\u003e panics (\u003ca href=\"https://redirect.github.com/tokio-rs/bytes/issues/837\"\u003e#837\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/tokio-rs/bytes/commit/76c0fbb54ed4336caf9d2311658a2f4a5627c21d\"\u003e\u003ccode\u003e76c0fbb\u003c/code\u003e\u003c/a\u003e Release bytes v1.12.1 (\u003ca href=\"https://redirect.github.com/tokio-rs/bytes/issues/838\"\u003e#838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/bytes/commit/924c82bf0053cb13a0fb5165925d564622b2092f\"\u003e\u003ccode\u003e924c82b\u003c/code\u003e\u003c/a\u003e Handle unwinding from Box::new (\u003ca href=\"https://redirect.github.com/tokio-rs/bytes/issues/837\"\u003e#837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tokio-rs/bytes/compare/v1.12.0...v1.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `camino` from 1.2.4 to 1.2.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/camino-rs/camino/releases\"\u003ecamino's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecamino 1.2.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cp\u003eRemoved unnecessary files from the package.\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/camino-rs/camino/blob/main/CHANGELOG.md\"\u003ecamino's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.5] - 2026-07-28\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cp\u003eRemoved unnecessary files from the package.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/camino-rs/camino/commit/0b8668c4774a8058244cb98621e5a7f4f0bc49a3\"\u003e\u003ccode\u003e0b8668c\u003c/code\u003e\u003c/a\u003e [camino] version 1.2.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/camino-rs/camino/commit/2437e7813424640e4397ecae46b3c295397c9378\"\u003e\u003ccode\u003e2437e78\u003c/code\u003e\u003c/a\u003e [meta] prepare changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/camino-rs/camino/commit/928c6862e8091ef57a6c3a1b40e3e623006ee327\"\u003e\u003ccode\u003e928c686\u003c/code\u003e\u003c/a\u003e switch to an include list in the package (\u003ca href=\"https://redirect.github.com/camino-rs/camino/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/camino-rs/camino/commit/089546bb2fedd0dcaad334ab6cb9314fc0000951\"\u003e\u003ccode\u003e089546b\u003c/code\u003e\u003c/a\u003e remove claude detritus (\u003ca href=\"https://redirect.github.com/camino-rs/camino/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/camino-rs/camino/commit/3a9bd8cc02bb818931dad21a794c0864a6c8bb10\"\u003e\u003ccode\u003e3a9bd8c\u003c/code\u003e\u003c/a\u003e add back the link for From\u0026lt;Box\u003c!-- raw HTML omitted --\u003e\u0026gt; for Box\u0026lt;Path\u0026gt; (\u003ca href=\"https://redirect.github.com/camino-rs/camino/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/camino-rs/camino/compare/camino-1.2.4...camino-1.2.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `clap` from 4.5.60 to 4.6.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/clap-rs/clap/releases\"\u003eclap's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.6.6\u003c/h2\u003e\n\u003ch2\u003e[4.6.6] - 2026-08-06\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eCommand::get_overridden_usage\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.5\u003c/h2\u003e\n\u003ch2\u003e[4.6.5] - 2026-07-31\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(help)\u003c/em\u003e Correctly mark which \u003ccode\u003evalue_names\u003c/code\u003e are optional with \u003ccode\u003enum_args\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.4\u003c/h2\u003e\n\u003ch2\u003e[4.6.4] - 2026-07-21\u003c/h2\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to syn v3\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.3\u003c/h2\u003e\n\u003ch2\u003e[4.6.3] - 2026-07-20\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Allow \u003ccode\u003e\u0026quot;literal\u0026quot;.function()\u003c/code\u003e as attribute values\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.2\u003c/h2\u003e\n\u003ch2\u003e[4.6.2] - 2026-07-15\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(help)\u003c/em\u003e Say \u003ccode\u003ealias\u003c/code\u003e when there is only one\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.1\u003c/h2\u003e\n\u003ch2\u003e[4.6.1] - 2026-04-15\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Ensure rebuilds happen when an read env variable is changed\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/clap-rs/clap/blob/main/CHANGELOG.md\"\u003eclap's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.6.6] - 2026-08-06\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eCommand::get_overridden_usage\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.5] - 2026-07-31\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(help)\u003c/em\u003e Correctly mark which \u003ccode\u003evalue_names\u003c/code\u003e are optional with \u003ccode\u003enum_args\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.4] - 2026-07-21\u003c/h2\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to syn v3\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.3] - 2026-07-20\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Allow \u003ccode\u003e\u0026quot;literal\u0026quot;.function()\u003c/code\u003e as attribute values\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.2] - 2026-07-15\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(help)\u003c/em\u003e Say \u003ccode\u003ealias\u003c/code\u003e when there is only one\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.1] - 2026-04-15\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Ensure rebuilds happen when an read env variable is changed\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.0] - 2026-03-12\u003c/h2\u003e\n\u003ch3\u003eCompatibility\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate MSRV to 1.85\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.5.61] - 2026-03-12\u003c/h2\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate dependencies\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/clap-rs/clap/commit/348cff3fc4d42d09a2ed1ad07b9b2cb79efc233a\"\u003e\u003ccode\u003e348cff3\u003c/code\u003e\u003c/a\u003e chore: Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/d4783779f80f486310a642bfe1d24f24e512fae8\"\u003e\u003ccode\u003ed478377\u003c/code\u003e\u003c/a\u003e docs: Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/04b9fbb83a88a3dac4c33b5589c8aa79f7c965f7\"\u003e\u003ccode\u003e04b9fbb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6414\"\u003e#6414\u003c/a\u003e from koopatroopa787/fix-bash-completion-bracket-glob\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/70752392a8ca7ea877c651622a2247b2ccc0fb5e\"\u003e\u003ccode\u003e7075239\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6422\"\u003e#6422\u003c/a\u003e from BaumiCoder/fix-fish-indentations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/f90a96636ad3b62c17790a97c1192a525b7db286\"\u003e\u003ccode\u003ef90a966\u003c/code\u003e\u003c/a\u003e fix(complete): Use spaces for indentation in fish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/dd4997ba2d5eecf789936f46f2ccb52126e128bf\"\u003e\u003ccode\u003edd4997b\u003c/code\u003e\u003c/a\u003e fix(complete): Don't glob-expand bash positionals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/8387c812c4b9726474b8407f81ec97f0acf570ed\"\u003e\u003ccode\u003e8387c81\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6399\"\u003e#6399\u003c/a\u003e from clap-rs/renovate/crate-ci-typos-1.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/8141e110ecee321277e90b4baa22a5baa02813ea\"\u003e\u003ccode\u003e8141e11\u003c/code\u003e\u003c/a\u003e chore(deps): Update compatible (dev) (\u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6398\"\u003e#6398\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/8a6bd4e43e85da71accfc407641bfff9ff71ca8f\"\u003e\u003ccode\u003e8a6bd4e\u003c/code\u003e\u003c/a\u003e chore(deps): Update pre-commit hook crate-ci/typos to v1.47.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/71a7213d6e45758bb8c9c5f7c36ed768edef872e\"\u003e\u003ccode\u003e71a7213\u003c/code\u003e\u003c/a\u003e chore(deps): Update Rust Stable to v1.96 (\u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6396\"\u003e#6396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/clap-rs/clap/compare/clap_complete-v4.5.60...clap_complete-v4.6.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `data-encoding` from 2.11.0 to 2.11.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ia0/data-encoding/commit/834737d9c3dc957ce1b653959e3f35061dd77ade\"\u003e\u003ccode\u003e834737d\u003c/code\u003e\u003c/a\u003e Release 2.11.1 (\u003ca href=\"https://redirect.github.com/ia0/data-encoding/issues/160\"\u003e#160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ia0/data-encoding/commit/a57da53784fd1f928fb5bec5b72cf44cd10294f8\"\u003e\u003ccode\u003ea57da53\u003c/code\u003e\u003c/a\u003e Remove deprecated authors field from Cargo.toml (\u003ca href=\"https://redirect.github.com/ia0/data-encoding/issues/158\"\u003e#158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ia0/data-encoding/commit/8e44011f38f6f24ea8116c8aa57080e070ffbc3a\"\u003e\u003ccode\u003e8e44011\u003c/code\u003e\u003c/a\u003e Support syn v3 (\u003ca href=\"https://redirect.github.com/ia0/data-encoding/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/ia0/data-encoding/compare/v2.11.0...v2.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flate2` from 1.1.9 to 1.1.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/flate2-rs/releases\"\u003eflate2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.1.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: reuse zlib's decoder buffer by \u003ca href=\"https://github.com/Vaiz\"\u003e\u003ccode\u003e@​Vaiz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/532\"\u003erust-lang/flate2-rs#532\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add reset method for read::GzDecoder and buffered::GzDecoder by \u003ca href=\"https://github.com/Vaiz\"\u003e\u003ccode\u003e@​Vaiz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/534\"\u003erust-lang/flate2-rs#534\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop cloudflare-zlib by \u003ca href=\"https://github.com/kornelski\"\u003e\u003ccode\u003e@​kornelski\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/539\"\u003erust-lang/flate2-rs#539\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a wrapper for the \u003ccode\u003eCrc\u003c/code\u003e struct by \u003ca href=\"https://github.com/MikkelPaulson\"\u003e\u003ccode\u003e@​MikkelPaulson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/540\"\u003erust-lang/flate2-rs#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump miniz_oxide to 0.9 by \u003ca href=\"https://github.com/oscargus\"\u003e\u003ccode\u003e@​oscargus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/543\"\u003erust-lang/flate2-rs#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade miniz_oxide and add unit tests of the different flush kinds by \u003ca href=\"https://github.com/fintelia\"\u003e\u003ccode\u003e@​fintelia\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/498\"\u003erust-lang/flate2-rs#498\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix infinite loop in writing gzip header/footer by \u003ca href=\"https://github.com/Shnatsel\"\u003e\u003ccode\u003e@​Shnatsel\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/547\"\u003erust-lang/flate2-rs#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest: generate corrupt gzip fixture at runtime by \u003ca href=\"https://github.com/nanookclaw\"\u003e\u003ccode\u003e@​nanookclaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/550\"\u003erust-lang/flate2-rs#550\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject oversized gzip extra fields by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/553\"\u003erust-lang/flate2-rs#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject incomplete deflate streams at EOF by \u003ca href=\"https://github.com/Guflly\"\u003e\u003ccode\u003e@​Guflly\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/556\"\u003erust-lang/flate2-rs#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInclude \u003ccode\u003eREADME.md\u003c/code\u003e in a private module by \u003ca href=\"https://github.com/bushrat011899\"\u003e\u003ccode\u003e@​bushrat011899\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/562\"\u003erust-lang/flate2-rs#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eno_std\u003c/code\u003e support using nightly \u003ccode\u003ealloc_io\u003c/code\u003e by \u003ca href=\"https://github.com/bushrat011899\"\u003e\u003ccode\u003e@​bushrat011899\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/559\"\u003erust-lang/flate2-rs#559\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eget_mut()\u003c/code\u003e documentation to make clear how 'inner` can be used by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/558\"\u003erust-lang/flate2-rs#558\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/Vaiz\"\u003e\u003ccode\u003e@​Vaiz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/532\"\u003erust-lang/flate2-rs#532\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MikkelPaulson\"\u003e\u003ccode\u003e@​MikkelPaulson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/540\"\u003erust-lang/flate2-rs#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oscargus\"\u003e\u003ccode\u003e@​oscargus\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/543\"\u003erust-lang/flate2-rs#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nanookclaw\"\u003e\u003ccode\u003e@​nanookclaw\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/550\"\u003erust-lang/flate2-rs#550\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Guflly\"\u003e\u003ccode\u003e@​Guflly\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/556\"\u003erust-lang/flate2-rs#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bushrat011899\"\u003e\u003ccode\u003e@​bushrat011899\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/562\"\u003erust-lang/flate2-rs#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/rust-lang/flate2-rs/compare/1.1.9...1.1.10\"\u003ehttps://github.com/rust-lang/flate2-rs/compare/1.1.9...1.1.10\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/ed93d4fc60eaf876c6aded741bf992d524551930\"\u003e\u003ccode\u003eed93d4f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/issues/558\"\u003e#558\u003c/a\u003e from rust-lang/lib-doc-update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/fb5228dcd7ca7f4ffb2240e6aec8547b85064c9a\"\u003e\u003ccode\u003efb5228d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/issues/559\"\u003e#559\u003c/a\u003e from bushrat011899/no_std\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/6ed3ba32e321bd6865df6d4ec96d2550c11e50f0\"\u003e\u003ccode\u003e6ed3ba3\u003c/code\u003e\u003c/a\u003e Add executable \u003ccode\u003eno_std\u003c/code\u003e example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/faed8a04671a608efda8ae3520844889210ada95\"\u003e\u003ccode\u003efaed8a0\u003c/code\u003e\u003c/a\u003e Expand CI to test \u003ccode\u003eno_std\u003c/code\u003e compatibility and correctness\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/2ba8e7e6663bb173782c2c96d1203bed098aadf3\"\u003e\u003ccode\u003e2ba8e7e\u003c/code\u003e\u003c/a\u003e Add unstable \u003ccode\u003eno_std\u003c/code\u003e support behind \u003ccode\u003eflate2_unstable_nightly_alloc_io\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/3fe11268ccbb777e22a8352aa95307af72fa8ee9\"\u003e\u003ccode\u003e3fe1126\u003c/code\u003e\u003c/a\u003e Centralize usage of \u003ccode\u003estd\u003c/code\u003e for \u003ccode\u003eerror\u003c/code\u003e and \u003ccode\u003eio\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/98e313a26ff137b0d79eb55f192911c80862d6d5\"\u003e\u003ccode\u003e98e313a\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eGzHeader::mtime_as_duration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/064296528d679f3aef0ca11b8ca0e2cad21b283d\"\u003e\u003ccode\u003e0642965\u003c/code\u003e\u003c/a\u003e Switch to \u003ccode\u003ecore\u003c/code\u003e implicit prelude and only use \u003ccode\u003estd\u003c/code\u003e where required\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/454a63ce8ac5891d938ecf372a537e17e5cae586\"\u003e\u003ccode\u003e454a63c\u003c/code\u003e\u003c/a\u003e Remove left-over \u003ccode\u003edbg!\u003c/code\u003e statement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/2a490b7df96326c34a8ea75b2930eab4851cac1e\"\u003e\u003ccode\u003e2a490b7\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eruntime_detection\u003c/code\u003e feature\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/flate2-rs/compare/1.1.9...1.1.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `futures` from 0.3.32 to 0.3.34\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/futures-rs/releases\"\u003efutures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.34\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreserve cloned waker identity. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3032\"\u003e#3032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdato \u003ccode\u003esyn\u003c/code\u003e to 3. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3028\"\u003e#3028\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.33\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eReadLine\u003c/code\u003e's soundness issue regarding to exception safety. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3020\"\u003e#3020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix unsound \u003ccode\u003eSend\u003c/code\u003e impl for \u003ccode\u003eIterPinRef\u003c/code\u003e and \u003ccode\u003eIter\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3003\"\u003e#3003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix stacked borrows violation in \u003ccode\u003ecompat01as03\u003c/code\u003e implementation. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3012\"\u003e#3012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix memory leak in \u003ccode\u003eFuturesUnordered::IntoIter\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3005\"\u003e#3005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eportable-atomic-alloc\u003c/code\u003e feature and use it in \u003ccode\u003eFuturesUnordered\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3007\"\u003e#3007\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRe-export \u003ccode\u003ealloc::task::Wake\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3010\"\u003e#3010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003espin\u003c/code\u003e to 0.12. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3014\"\u003e#3014\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/futures-rs/blob/main/CHANGELOG.md\"\u003efutures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e0.3.34 - 2026-08-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePreserve cloned waker identity. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3032\"\u003e#3032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdato \u003ccode\u003esyn\u003c/code\u003e to 3. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3028\"\u003e#3028\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e0.3.33 - 2026-07-18\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eReadLine\u003c/code\u003e's soundness issue regarding to exception safety. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3020\"\u003e#3020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix unsound \u003ccode\u003eSend\u003c/code\u003e impl for \u003ccode\u003eIterPinRef\u003c/code\u003e and \u003ccode\u003eIter\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3003\"\u003e#3003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix stacked borrows violation in \u003ccode\u003ecompat01as03\u003c/code\u003e implementation. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3012\"\u003e#3012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix memory leak in \u003ccode\u003eFuturesUnordered::IntoIter\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3005\"\u003e#3005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eportable-atomic-alloc\u003c/code\u003e feature and use it in \u003ccode\u003eFuturesUnordered\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3007\"\u003e#3007\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRe-export \u003ccode\u003ealloc::task::Wake\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3010\"\u003e#3010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003espin\u003c/code\u003e to 0.12. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3014\"\u003e#3014\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/rust-lang/futures-rs/commit/705e6b5c0f06535b1aac1cb1989a172b3d45be8c\"\u003e\u003ccode\u003e705e6b5\u003c/code\u003e\u003c/a\u003e Release 0.3.34\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/616dac7bf944ff9876b7f8b77b37c6224cbbb506\"\u003e\u003ccode\u003e616dac7\u003c/code\u003e\u003c/a\u003e compat: Inline RawWaker clone function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/41763693ee6400e2a7931530790af6e1746eb1c6\"\u003e\u003ccode\u003e4176369\u003c/code\u003e\u003c/a\u003e Inline remaining RawWaker clone functions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/f17a8957d9a25a2dd3c95b43f1c6caa108df6bcc\"\u003e\u003ccode\u003ef17a895\u003c/code\u003e\u003c/a\u003e Fix cloned FuturesUnordered waker identity\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/51d62ada9bb8eab06339475e0f1b19cfa41fb2d7\"\u003e\u003ccode\u003e51d62ad\u003c/code\u003e\u003c/a\u003e macro: bump \u003ccode\u003esyn\u003c/code\u003e to v3 (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3028\"\u003e#3028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/9e26177cf01155d57917ee943246d0c97843deed\"\u003e\u003ccode\u003e9e26177\u003c/code\u003e\u003c/a\u003e ci: Reduce timeout-minutes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/b2d098331763fca9b0665f80bb31a66e3112a2cf\"\u003e\u003ccode\u003eb2d0983\u003c/code\u003e\u003c/a\u003e tsan: Enable Adaptive Delay\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/f733d0ea9fed49263203ae0a7cb6beb5fe1a04c4\"\u003e\u003ccode\u003ef733d0e\u003c/code\u003e\u003c/a\u003e Miri: Ignore compat tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/e5def2f60c7eb1e8e6b76da540e148cc7638b115\"\u003e\u003ccode\u003ee5def2f\u003c/code\u003e\u003c/a\u003e Rename default branch to main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/89cc254cb8bfcc78e6a31e7711d0757f97bcb531\"\u003e\u003ccode\u003e89cc254\u003c/code\u003e\u003c/a\u003e Release 0.3.33\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/futures-rs/compare/0.3.32...0.3.34\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `globset` from 0.4.18 to 0.4.20\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/5055264ae021b5d0e01e55f723622d638ea877f0\"\u003e\u003ccode\u003e5055264\u003c/code\u003e\u003c/a\u003e globset-0.4.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/020687a77d13146923333f0beb274eeabd54a270\"\u003e\u003ccode\u003e020687a\u003c/code\u003e\u003c/a\u003e ignore,globset: increase pool capacity\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/5ed408e17eccfc59bcec48f584feece902873e54\"\u003e\u003ccode\u003e5ed408e\u003c/code\u003e\u003c/a\u003e ignore-0.4.32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/435f59fc4b43af3ab32f34d53fa34978f393fe52\"\u003e\u003ccode\u003e435f59f\u003c/code\u003e\u003c/a\u003e ignore: skip loading unreachable ignore files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/f9c05a949d1a0dc8e16dee28ca9605d38611faeb\"\u003e\u003ccode\u003ef9c05a9\u003c/code\u003e\u003c/a\u003e index: remove incorrect README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/8372866810a1f2a647d11d7780984d4402a5c1e9\"\u003e\u003ccode\u003e8372866\u003c/code\u003e\u003c/a\u003e index: add some initial indexing scaffolding\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/d99ac34406f82c03c3938c222f1786495c845034\"\u003e\u003ccode\u003ed99ac34\u003c/code\u003e\u003c/a\u003e core: add \u003ccode\u003eindex\u003c/code\u003e module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/2ed0c006fee4c441add774a711d9122a88477619\"\u003e\u003ccode\u003e2ed0c00\u003c/code\u003e\u003c/a\u003e flags: disable many flags when indexing is enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/59e318f5ace48db54f37bb67c152535bc17fa153\"\u003e\u003ccode\u003e59e318f\u003c/code\u003e\u003c/a\u003e ignore-0.4.31\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/a9dc2228fbddd1d25146f38d0926830812c97419\"\u003e\u003ccode\u003ea9dc222\u003c/code\u003e\u003c/a\u003e cargo: set \u003ccode\u003erust-version\u003c/code\u003e on all crates\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/BurntSushi/ripgrep/compare/globset-0.4.18...globset-0.4.20\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hyper` from 1.10.1 to 1.11.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hyperium/hyper/releases\"\u003ehyper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.11.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ehttp1:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003edetect TE: trailers caselessly and with other values (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4152\"\u003e#4152\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/72fcf545c9b4a261f31d89bafd3019a2d4e9e1d7\"\u003e72fcf545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erecognize \u003ccode\u003e\\n\\r\\n\u003c/code\u003e as a head terminator in the partial-read fast path (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4147\"\u003e#4147\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/3534d75c898da17b023e6bff9b4cf71afed123ad\"\u003e3534d75c\u003c/a\u003e, closes \u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4145\"\u003e#4145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eflush bytes buffered by the write re-check before yielding (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4143\"\u003e#4143\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/f660f5bf6eed3fe793f899507ff5bb9e266d4b0d\"\u003ef660f5bf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eevict pooled conn on request-side Connection: close (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4110\"\u003e#4110\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/da19be08f34d3da01c4c0f9cfe2837e7d377f73d\"\u003eda19be08\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(http1): evict pooled conn on request-side Connection: close by \u003ca href=\"https://github.com/samlandfried\"\u003e\u003ccode\u003e@​samlandfried\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4110\"\u003ehyperium/hyper#4110\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(http1): rewrite disabled old 0.1-futures conn tests by \u003ca href=\"https://github.com/seanmonstar\"\u003e\u003ccode\u003e@​seanmonstar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4138\"\u003ehyperium/hyper#4138\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CONTRIBUTING.md by \u003ca href=\"https://github.com/Catwoman08\"\u003e\u003ccode\u003e@​Catwoman08\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4140\"\u003ehyperium/hyper#4140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(error/upgrade): move from the use of ref patterns to \u003ccode\u003e\u0026amp;\u003c/code\u003e and remove allow for lint \u003ccode\u003eref_patterns\u003c/code\u003e by \u003ca href=\"https://github.com/logan-bobo\"\u003e\u003ccode\u003e@​logan-bobo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4141\"\u003ehyperium/hyper#4141\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(http1): flush bytes buffered by the write re-check before yielding by \u003ca href=\"https://github.com/ricochet\"\u003e\u003ccode\u003e@​ricochet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4143\"\u003ehyperium/hyper#4143\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix documentation typo by \u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4146\"\u003ehyperium/hyper#4146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf(http2): reserve minimal send capacity when piping request bodies by \u003ca href=\"https://github.com/sandersaares\"\u003e\u003ccode\u003e@​sandersaares\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4149\"\u003ehyperium/hyper#4149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(lib): cleanup old commented code by \u003ca href=\"https://github.com/dswij\"\u003e\u003ccode\u003e@​dswij\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4151\"\u003ehyperium/hyper#4151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(http1): recognize \\n\\r\\n as a head terminator in the partial-read fast path by \u003ca href=\"https://github.com/nam2ee\"\u003e\u003ccode\u003e@​nam2ee\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4147\"\u003ehyperium/hyper#4147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(body): add streaming read examples by \u003ca href=\"https://github.com/fzlzjerry\"\u003e\u003ccode\u003e@​fzlzjerry\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4148\"\u003ehyperium/hyper#4148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(http1): detect TE: trailers caselessly and with other values by \u003ca href=\"https://github.com/seanmonstar\"\u003e\u003ccode\u003e@​seanmonstar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4152\"\u003ehyperium/hyper#4152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix missing_errors_doc lint by \u003ca href=\"https://github.com/CinisBorn\"\u003e\u003ccode\u003e@​CinisBorn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4154\"\u003ehyperium/hyper#4154\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: drop redundant \u003ccode\u003econtinue\u003c/code\u003e and remove needless_continue allow by \u003ca href=\"https://github.com/MsfPablo\"\u003e\u003ccode\u003e@​MsfPablo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4157\"\u003ehyperium/hyper#4157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: expand crate-level cancel safety section with HTTP/1 vs HTTP/2 by \u003ca href=\"https://github.com/MsfPablo\"\u003e\u003ccode\u003e@​MsfPablo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4156\"\u003ehyperium/hyper#4156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003estyle(lib): temporarily allow some new clippy lints by \u003ca href=\"https://github.com/seanmonstar\"\u003e\u003ccode\u003e@​seanmonstar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4165\"\u003ehyperium/hyper#4165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd an initial COLLABORATORS guide by \u003ca href=\"https://github.com/seanmonstar\"\u003e\u003ccode\u003e@​seanmonstar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4158\"\u003ehyperium/hyper#4158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eclippy: remove lints removed in newer clippy versions by \u003ca href=\"https://github.com/tangaac\"\u003e\u003ccode\u003e@​tangaac\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4167\"\u003ehyperium/hyper#4167\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare v1.11.1 by \u003ca href=\"https://github.com/seanmonstar\"\u003e\u003ccode\u003e@​seanmonstar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4169\"\u003ehyperium/hyper#4169\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/samlandfried\"\u003e\u003ccode\u003e@​samlandfried\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4110\"\u003ehyperium/hyper#4110\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Catwoman08\"\u003e\u003ccode\u003e@​Catwoman08\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4140\"\u003ehyperium/hyper#4140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/logan-bobo\"\u003e\u003ccode\u003e@​logan-bobo\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4141\"\u003ehyperium/hyper#4141\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ricochet\"\u003e\u003ccode\u003e@​ricochet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4143\"\u003ehyperium/hyper#4143\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4146\"\u003ehyperium/hyper#4146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sandersaares\"\u003e\u003ccode\u003e@​sandersaares\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4149\"\u003ehyperium/hyper#4149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nam2ee\"\u003e\u003ccode\u003e@​nam2ee\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4147\"\u003ehyperium/hyper#4147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fzlzjerry\"\u003e\u003ccode\u003e@​fzlzjerry\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4148\"\u003ehyperium/hyper#4148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/CinisBorn\"\u003e\u003ccode\u003e@​CinisBorn\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4154\"\u003ehyperium/hyper#4154\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MsfPablo\"\u003e\u003ccode\u003e@​MsfPablo\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4157\"\u003ehyperium/hyper#4157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tangaac\"\u003e\u003ccode\u003e@​tangaac\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4167\"\u003ehyperium/hyper#4167\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/hyperium/hyper/compare/v1.11.0...v1.11.1\"\u003ehttps://github.com/hyperium/hyper/compare/v1.11.0...v1.11.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.11.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ert:\u003c/strong\u003e add \u003ccode\u003eReadBufCursor::initialized_unfilled()\u003c/code\u003e method (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4115\"\u003e#4115\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/ccc1e850dc0cda3e71b0acd11f60ca3d48d09034\"\u003eccc1e850\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/hyperium/hyper/blob/master/CHANGELOG.md\"\u003ehyper's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.11.1 (2026-08-27)\u003c/h3\u003e\n\u003ch4\u003eBug Fixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ehttp1:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003edetect TE: trailers caselessly and with other values (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4152\"\u003e#4152\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/72fcf545c9b4a261f31d89bafd3019a2d4e9e1d7\"\u003e72fcf545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erecognize \u003ccode\u003e\\n\\r\\n\u003c/code\u003e as a head terminator in the partial-read fast path (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4147\"\u003e#4147\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/3534d75c898da17b023e6bff9b4cf71afed123ad\"\u003e3534d75c\u003c/a\u003e, closes \u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4145\"\u003e#4145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eflush bytes buffered by the write re-check before yielding (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4143\"\u003e#4143\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/f660f5bf6eed3fe793f899507ff5bb9e266d4b0d\"\u003ef660f5bf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eevict pooled conn on request-side Connection: close (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4110\"\u003e#4110\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/da19be08f34d3da01c4c0f9cfe2837e7d377f73d\"\u003eda19be08\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.11.0 (2026-07-20)\u003c/h2\u003e\n\u003ch4\u003eBug Fixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ehttp1:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003ediscard content-length header when received before transfer-encoding (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4124\"\u003e#4124\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/540fff9180ce47ee5fab01b6cc2126eb6c286eda\"\u003e540fff91\u003c/a\u003e, closes \u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4123\"\u003e#4123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse append for repeat trailer values in encoder (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4118\"\u003e#4118\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/de1483d7db70477cc8799a344634ae6ee020a7db\"\u003ede1483d7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eallow up to max_headers trailers (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4108\"\u003e#4108\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/f584091ac096bd5dd478f73256188c3261a945b9\"\u003ef584091a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse append for repeat trailers (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4107\"\u003e#4107\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/876effe10fd8f8ad4535ade1f84e88f199f2cf6b\"\u003e876effe1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eflush buffered data before shutdown (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4018\"\u003e#4018\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/72046cc72e7aa82c439eed00850b8b1ad3f7e4dc\"\u003e72046cc7\u003c/a\u003e, closes \u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4022\"\u003e#4022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emore strictly enforce max_buf_size when parsing (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4093\"\u003e#4093\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/90ede307470dba98b4e184ad88d6f5aae8b0afd7\"\u003e90ede307\u003c/a\u003e, closes \u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4081\"\u003e#4081\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ehttp2:\u003c/strong\u003e avoid buffering \u003ccode\u003eUpgraded\u003c/code\u003e writes without send capacity (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4102\"\u003e#4102\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/aecf5abfbc3dc95f21ac1538db1aa3f690fa6ab6\"\u003eaecf5abf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eFeatures\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ert:\u003c/strong\u003e add \u003ccode\u003eReadBufCursor::initialized_unfilled()\u003c/code\u003e method (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4115\"\u003e#4115\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/ccc1e850dc0cda3e71b0acd11f60ca3d48d09034\"\u003eccc1e850\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/hyperium/hyper/commit/6371cd425017155f7fbecef0e57b218edbe6a93a\"\u003e\u003ccode\u003e6371cd4\u003c/code\u003e\u003c/a\u003e v1.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/37c9d0c7e018d3c218f1fc0e472207ff05ef3772\"\u003e\u003ccode\u003e37c9d0c\u003c/code\u003e\u003c/a\u003e style(lib): remove lints that have been removed in newer clippy (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4167\"\u003e#4167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/08a288135fb66321940b07ac15f3b9b8e46bc861\"\u003e\u003ccode\u003e08a2881\u003c/code\u003e\u003c/a\u003e docs(contrib): add initial COLLABORATORS guide (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4158\"\u003e#4158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/8b2e533253cf3acaadd85d3c05c93b3be2205d43\"\u003e\u003ccode\u003e8b2e533\u003c/code\u003e\u003c/a\u003e style(lib): temporarily allow some new clippy lints (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4165\"\u003e#4165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/8fcaf1a62787b824fdd7b95a3e7c9ea81acd3449\"\u003e\u003ccode\u003e8fcaf1a\u003c/code\u003e\u003c/a\u003e docs(lib): expand crate-level cancel safety section with HTTP/1 vs HTTP/2 (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4\"\u003e#4\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/d32b294f0bd0320df96c37d39a3047219ab0d7ae\"\u003e\u003ccode\u003ed32b294\u003c/code\u003e\u003c/a\u003e style(lib): fix needless_continue lint (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4157\"\u003e#4157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/fca07bd3937d4a3a4822372acdf766d0640796af\"\u003e\u003ccode\u003efca07bd\u003c/code\u003e\u003c/a\u003e style(lib): fix missing_errors_doc lint (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4154\"\u003e#4154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/72fcf545c9b4a261f31d89bafd3019a2d4e9e1d7\"\u003e\u003ccode\u003e72fcf54\u003c/code\u003e\u003c/a\u003e fix(http1): detect TE: trailers caselessly and with other values (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4152\"\u003e#4152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/af432e993c92ea65e76fc590738334e74b5ccf34\"\u003e\u003ccode\u003eaf432e9\u003c/code\u003e\u003c/a\u003e docs(body): add streaming read examples (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4148\"\u003e#4148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/3534d75c898da17b023e6bff9b4cf71afed123ad\"\u003e\u003ccode\u003e3534d75\u003c/code\u003e\u003c/a\u003e fix(http1): recognize \u003ccode\u003e\\n\\r\\n\u003c/code\u003e as a head terminator in the partial-read fast ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hyperium/hyper/compare/v1.10.1...v1.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `libc` from 0.2.186 to 0.2.189\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/libc/releases\"\u003elibc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.2.189\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEmscripten: Add \u003ccode\u003epthread_sigmask\u003c/code\u003e, \u003ccode\u003esigwait\u003c/code\u003e, \u003ccode\u003esigwaitinfo\u003c/code\u003e, \u003ccode\u003esigtimedwait\u003c/code\u003e, \u003ccode\u003efaccessat\u003c/code\u003e, and \u003ccode\u003epthread_kill\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5270\"\u003e#5270\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux SPARC: Enable the \u003ccode\u003eclone3\u003c/code\u003e syscall (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4980\"\u003e#4980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSolarish: Add \u003ccode\u003eCLOCK_PROCESS_CPUTIME_ID\u003c/code\u003e and \u003ccode\u003eCLOCK_THREAD_CPUTIME_ID\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5274\"\u003e#5274\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003eCLONE_INTO_CGROUP\u003c/code\u003e and \u003ccode\u003eCLONE_CLEAR_SIGHAND\u003c/code\u003e. These overflow their types and will be changed to a larger size in the future. (\u003ca href=\"https://github.com/rust-lang/libc/commit/8c6e6710458db4d6aa0766f6f84bbf13f640237e\"\u003e8c6e6710458d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMusl riscv32: Rename padding fields to avoid a conflict and fix the build (\u003ca href=\"https://github.com/rust-lang/libc/commit/2499ff0ad9936a036e78a4e0991445efee383564\"\u003e2499ff0ad993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNuttX: Fix \u003ccode\u003ewchar_t\u003c/code\u003e definition under Arm (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5245\"\u003e#5245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWindows: Add back link names for \u003ccode\u003etime\u003c/code\u003e-related symbols (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5300\"\u003e#5300\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.188\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestore \u003ccode\u003eSend\u003c/code\u003e and \u003ccode\u003eSync\u003c/code\u003e for \u003ccode\u003eDIR\u003c/code\u003e (\u003ca href=\"https://github.com/rust-lang/libc/commit/35b062263401733cd89065c6a553640f2ba51ff1\"\u003e35b062263401\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThese were removed in 0.2.187 because \u003ccode\u003elibc\u003c/code\u003e does not actually make \u003ccode\u003eSend\u003c/code\u003e and \u003ccode\u003eSync\u003c/code\u003e\nguarantees about \u003ccode\u003eDIR\u003c/code\u003e (or other extern types), but this caused some crates to break.\nThe traits are added back for now to allow time to migrate, but will be removed again\nin the future; please make sure your crates are not relying on \u003ccode\u003elibc::DIR: Send\u003c/code\u003e or\n\u003ccode\u003elibc::DIR: Sync\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003e0.2.187\u003c/h2\u003e\n\u003cp\u003eThis release contains a number of improvements related to 64-bit \u003ccode\u003etime_t\u003c/code\u003e configuration.\nOf note the existing \u003ccode\u003eRUST_LIBC_UNSTABLE_*\u003c/code\u003e environment variables have been replaced\nwith configuration options. The new way to use these is:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_musl_v1_2_3' cargo ...\nRUSTFLAGS='--cfg=libc_unstable_gnu_time_bits=\u0026quot;64\u0026quot;' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eBeing able to set this via \u003ccode\u003eRUSTFLAGS\u003c/code\u003e makes it easier to only apply configuration to\nspecific targets (and notably, not the host if build scripts are used).\u003c/p\u003e\n\u003cp\u003eThere are two other notable changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe 32-bit \u003ccode\u003ewindows-gnu\u003c/code\u003e targets now respect \u003ccode\u003elibc_unstable_gnu_time_bits\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003euClibc now supports a similar configuration option:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_uclibc_time64'\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/libc/blob/0.2.189/CHANGELOG.md\"\u003elibc's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.188...0.2.189\"\u003e0.2.189\u003c/a\u003e - 2026-07-21\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEmscripten: Add \u003ccode\u003epthread_sigmask\u003c/code\u003e, \u003ccode\u003esigwait\u003c/code\u003e, \u003ccode\u003esigwaitinfo\u003c/code\u003e, \u003ccode\u003esigtimedwait\u003c/code\u003e, \u003ccode\u003efaccessat\u003c/code\u003e, and \u003ccode\u003epthread_kill\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5270\"\u003e#5270\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux SPARC: Enable the \u003ccode\u003eclone3\u003c/code\u003e syscall (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4980\"\u003e#4980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSolarish: Add \u003ccode\u003eCLOCK_PROCESS_CPUTIME_ID\u003c/code\u003e and \u003ccode\u003eCLOCK_THREAD_CPUTIME_ID\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5274\"\u003e#5274\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003eCLONE_INTO_CGROUP\u003c/code\u003e and \u003ccode\u003eCLONE_CLEAR_SIGHAND\u003c/code\u003e. These overflow their types and will be changed to a larger size in the future. (\u003ca href=\"https://github.com/rust-lang/libc/commit/8c6e6710458db4d6aa0766f6f84bbf13f640237e\"\u003e8c6e6710458d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMusl riscv32: Rename padding fields to avoid a conflict and fix the build (\u003ca href=\"https://github.com/rust-lang/libc/commit/2499ff0ad9936a036e78a4e0991445efee383564\"\u003e2499ff0ad993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNuttX: Fix \u003ccode\u003ewchar_t\u003c/code\u003e definition under Arm (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5245\"\u003e#5245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWindows: Add back link names for \u003ccode\u003etime\u003c/code\u003e-related symbols (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5300\"\u003e#5300\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.187...0.2.188\"\u003e0.2.188\u003c/a\u003e - 2026-07-21\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestore \u003ccode\u003eSend\u003c/code\u003e and \u003ccode\u003eSync\u003c/code\u003e for \u003ccode\u003eDIR\u003c/code\u003e (\u003ca href=\"https://github.com/rust-lang/libc/commit/35b062263401733cd89065c6a553640f2ba51ff1\"\u003e35b062263401\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThese were removed in 0.2.187 because \u003ccode\u003elibc\u003c/code\u003e does not actually make \u003ccode\u003eSend\u003c/code\u003e and \u003ccode\u003eSync\u003c/code\u003e\nguarantees about \u003ccode\u003eDIR\u003c/code\u003e (or other extern types), but this caused some crates to break.\nThe traits are added back for now to allow time to migrate, but will be removed again\nin the future; please make sure your crates are not relying on \u003ccode\u003elibc::DIR: Send\u003c/code\u003e or\n\u003ccode\u003elibc::DIR: Sync\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.186...0.2.187\"\u003e0.2.187\u003c/a\u003e - 2026-07-20\u003c/h2\u003e\n\u003cp\u003eThis release contains a number of improvements related to 64-bit \u003ccode\u003etime_t\u003c/code\u003e configuration.\nOf note the existing \u003ccode\u003eRUST_LIBC_UNSTABLE_*\u003c/code\u003e environment variables have been replaced\nwith configuration options. The new way to use these is:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_musl_v1_2_3' cargo ...\nRUSTFLAGS='--cfg=libc_unstable_gnu_time_bits=\u0026quot;64\u0026quot;' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eBeing able to set this via \u003ccode\u003eRUSTFLAGS\u003c/code\u003e makes it easier to only apply configuration to\nspecific targets (and notably, not the host if build scripts are used).\u003c/p\u003e\n\u003cp\u003eThere are two other notable changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe 32-bit \u003ccode\u003ewindows-gnu\u003c/code\u003e targets now respect \u003ccode\u003elibc_unstable_gnu_time_bits\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003euClibc now supports a similar configuration option:\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/rust-lang/libc/commit/ef0906e20828777175f65caa7e681a0ce33c559a\"\u003e\u003ccode\u003eef0906e\u003c/code\u003e\u003c/a\u003e libc: Release 0.2.189\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/5a79f7642911e17cf9629857b88503e50d433fc4\"\u003e\u003ccode\u003e5a79f76\u003c/code\u003e\u003c/a\u003e riscv32-musl: Rename padding fields to avoid a conflict\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/3e51062f4249054264ae11363d8efbb652f9ab2e\"\u003e\u003ccode\u003e3e51062\u003c/code\u003e\u003c/a\u003e psp: Fix \u003ccode\u003eoverflowing_literals\u003c/code\u003e warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/e352fdd17b43c5e2a911041512c4d62953121018\"\u003e\u003ccode\u003ee352fdd\u003c/code\u003e\u003c/a\u003e emscripten: add pthread_sigmask, sigwait, sigwaitinfo, sigtimedwait, faccessa...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/63221b314d46bccaea33bdba2f3d75f25dc9c739\"\u003e\u003ccode\u003e63221b3\u003c/code\u003e\u003c/a\u003e macros: Require \u003ccode\u003esafe\u003c/code\u003e in \u003ccode\u003esafe_f!\u003c/code\u003e invocations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/707ab528fc31619d80ca8ee5fd714ff7285e818e\"\u003e\u003ccode\u003e707ab52\u003c/code\u003e\u003c/a\u003e macros: Require \u003ccode\u003eunsafe\u003c/code\u003e in \u003ccode\u003ef!\u003c/code\u003e invocations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8e40c9404b8127d5dd3d6f015c1da1f12b7dd44b\"\u003e\u003ccode\u003e8e40c94\u003c/code\u003e\u003c/a\u003e Enable clone3() syscall on sparc-linux and sparc64-linux\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8427909fb3c9890bd89c787e8ab18673032b0360\"\u003e\u003ccode\u003e8427909\u003c/code\u003e\u003c/a\u003e windows: Add back link names for \u003ccode\u003etime\u003c/code\u003e-related symbols\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/b4863fa4c31a95524339a6ee89aa5df042a33745\"\u003e\u003ccode\u003eb4863fa\u003c/code\u003e\u003c/a\u003e nuttx: fix wchar_t definition under arm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/41c683da26d2c74a69205ca1e5e87a415aa313c8\"\u003e\u003ccode\u003e41c683d\u003c/code\u003e\u003c/a\u003e nuttx: mirror type definitions\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.186...0.2.189\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.0 to 0.29.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.2\u003c/h2\u003e\n\u003cp\u003eThis patch fixes a regression in PyO3 0.29.1 which broke PyPy 3.11 compatibility (\u003ccode\u003e#[pyclass]\u003c/code\u003e types would crash PyPy on instance deletion).\u003c/p\u003e\n\u003cp\u003eA few further fixes have also landed with similar themes to PyO3 0.29.1: fixes to minor reference counting bugs, rough edges which would cause crashes, issues which would cause failed builds, and fixes to \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation.\u003c/p\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/ImFeH2\"\u003e\u003ccode\u003e@​ImFeH2\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Tpt\"\u003e\u003ccode\u003e@​Tpt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/WaterWhisperer\"\u003e\u003ccode\u003e@​WaterWhisperer\u003c/c...\n\n_Description has been truncated_","html_url":"https://github.com/sarkologist/anki-personal/pull/67","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sarkologist%2Fanki-personal/issues/67","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/67/packages"},{"uuid":"5471540801","node_id":"PR_kwDOT_ZaEc8AAAABDugeTA","number":18,"state":"open","title":"build(deps): bump pyo3 from 0.23.5 to 0.29.0 in /crates/marketing_mcp_fast in the cargo group across 1 directory","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":6,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-16T07:26:32.000Z","updated_at":"2026-09-16T07:27:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"pyo3","old_version":"0.23.5","new_version":"0.29.0","repository_url":"https://github.com/pyo3/pyo3"}],"path":"/crates/marketing_mcp_fast in the cargo group across 1 directory","ecosystem":"cargo"},"body":"Bumps the cargo group with 1 update in the /crates/marketing_mcp_fast directory: [pyo3](https://github.com/pyo3/pyo3).\n\nUpdates `pyo3` from 0.23.5 to 0.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.0\u003c/h2\u003e\n\u003cp\u003eThis release is a relatively large release with improvements across many areas of PyO3's API.\u003c/p\u003e\n\u003ch3\u003eBuild and packaging changes\u003c/h3\u003e\n\u003cp\u003eThis release brings full support for Python 3.15 beta. We encourage downstream projects to begin testing and distributing Python 3.15 beta wheels so that the ecosystem can prepare for the 3.15 final release later in the year.\u003c/p\u003e\n\u003cp\u003eAlongside Python 3.15 support comes support for its new \u0026quot;abi3t\u0026quot; stable ABI which supports both free-threaded and gil-enabled Python builds. For projects distributing stable ABI wheels, we recommend distributing (for each OS/architecture) an abi3 wheel built for your minimum supported Python version, a 3.14t version-specific wheel for free-threaded Python 3.14, and an abi3t wheel to support Python 3.15 (and future versions).\u003c/p\u003e\n\u003cp\u003eSupport for Python 3.7 has been dropped. Support for Python 3.13t, the first experimental free-threaded release of CPython, has also been dropped. 3.14t (and soon 3.15t) is more stable, performant, and the starting point for CPython's own declaration of \u0026quot;support\u0026quot; for the free-threaded build.\u003c/p\u003e\n\u003cp\u003eThe PyO3 build process (via the \u003ccode\u003epyo3-build-config\u003c/code\u003e crate) has been adjusted to reduce the cost of rebuilds when the environment used to detect the Python interpreter changes; \u003ccode\u003epyo3-build-config\u003c/code\u003e and \u003ccode\u003epyo3-macros\u003c/code\u003e will no longer be rebuilt in such cases (although \u003ccode\u003epyo3-ffi\u003c/code\u003e and crates downstream of it still will be rebuilt). As a consequence the \u003ccode\u003epyo3_build_config\u003c/code\u003e APIs now require crates to have a direct dependency on \u003ccode\u003epyo3\u003c/code\u003e or \u003ccode\u003epyo3-ffi\u003c/code\u003e. We hope to continue to reduce rebuild frequency and cost in a future PyO3 release.\u003c/p\u003e\n\u003ch3\u003eSecurity updates\u003c/h3\u003e\n\u003cp\u003eWith the recent boom in AI-assisted security scanning, PyO3 has inevitably had several correctness issues exposed by AI-assisted scanning.\u003c/p\u003e\n\u003cp\u003eIn particular, PyO3 0.29 fixes two security vulnerabilities we will be releasing to the RustSec Advisory Database imminently:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMissing \u003ccode\u003eSync\u003c/code\u003e bound on \u003ccode\u003ePyCFunction::new_closure\u003c/code\u003e closures\u003c/li\u003e\n\u003cli\u003ePossible out of bounds read in \u003ccode\u003eBoundTupleIterator::nth_back\u003c/code\u003e and \u003ccode\u003eBoundListIterator::nth_back\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAny code using the above APIs is advised to update as soon as possible.\u003c/p\u003e\n\u003cp\u003eThis release also contains several other minor breaking changes to close soundness holes uncovered by AI-assisted scanning. Our assessment as maintainers was that, excluding the two vulnerability cases listed above, these correctness issues would likely have crashed immediately upon user testing rather than leading to attacker-exploitable pathways. We nevertheless wanted to see them closed without the usual deprecation cycle. These cases are noted in the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eOther major themes in this release\u003c/h3\u003e\n\u003cp\u003eNew in this release is a CLI in \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate type stubs along with the \u003ccode\u003eexperimental-inspect\u003c/code\u003e feature. Downstream, \u003ccode\u003ematurin\u003c/code\u003e has also gained support to generate type stubs using the feature. The feature is reaching a point where substantial amount of type stubs can be generated automatically. We would like to encourage users to begin using this feature and helping us find what functionality is missing, with a hope we can declare its API stable given sufficient feedback.\u003c/p\u003e\n\u003cp\u003eA substantial amount of effort has been invested in \u003ccode\u003epyo3-ffi\u003c/code\u003e as part of the process of extending it with 3.15's new APIs. There have been many missing APIs from older Python versions added. There have also been a number of fixes to incorrect definitions (these are breaking changes, but also necessary for correctness); we hope there will be far fewer such cases in the future due to more comprehensive checking added to PyO3's CI. Finally, many private CPython APIs (those with \u003ccode\u003e_Py\u003c/code\u003e underscore-named prefix) have been removed from \u003ccode\u003epyo3-ffi\u003c/code\u003e's public API.\u003c/p\u003e\n\u003ch3\u003eIn closing\u003c/h3\u003e\n\u003cp\u003eThere are also many other incremental improvements, bug fixes and smaller features; full detail can be found in the \u003ca href=\"https://pyo3.rs/v0.29.0/changelog.html\"\u003eCHANGELOG\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003ePlease consult the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e for help upgrading.\u003c/p\u003e\n\u003cp\u003eThank you to everyone who contributed code, documentation, design ideas, bug reports, and feedback. The following contributors' commits are included in this release:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Alc-Alc\"\u003e\u003ccode\u003e@​Alc-Alc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/anuraaga\"\u003e\u003ccode\u003e@​anuraaga\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/BD103\"\u003e\u003ccode\u003e@​BD103\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Cheukting\"\u003e\u003ccode\u003e@​Cheukting\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ChristopherRabotin\"\u003e\u003ccode\u003e@​ChristopherRabotin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/clin1234\"\u003e\u003ccode\u003e@​clin1234\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/codeguru42\"\u003e\u003ccode\u003e@​codeguru42\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-11\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport the new PEP 803 abi3t ABI with new \u003ccode\u003eabi3t\u003c/code\u003e and \u003ccode\u003eabi3t-py315\u003c/code\u003e features. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-macros-backend\u003c/code\u003e no longer depends on \u003ccode\u003epyo3-build-config\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5809\"\u003e#5809\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.13t (3.14t and above continue to be supported; CPython declared free-threading supported starting with Python 3.14). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5865\"\u003e#5865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.7. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5912\"\u003e#5912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExtend range of supported versions of \u003ccode\u003ehashbrown\u003c/code\u003e optional dependency to include version 0.17. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5973\"\u003e#5973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport Python 3.15.0b1. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6014\"\u003e#6014\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-ffi\u003c/code\u003e is now \u003ccode\u003eno_std\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6022\"\u003e#6022\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_traceback\u003c/code\u003e to set the traceback of an exception object. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5349\"\u003e#5349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUnicodeDecodeError::new_err_from_utf8\u003c/code\u003e to create a \u003ccode\u003ePyErr\u003c/code\u003e from a \u003ccode\u003estr::Utf8Error\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5668\"\u003e#5668\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: implement \u003ccode\u003eINPUT_TYPE\u003c/code\u003e and \u003ccode\u003eOUTPUT_TYPE\u003c/code\u003e on optional third-party crate conversions. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5770\"\u003e#5770\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: include doc comments in generated stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5782\"\u003e#5782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::PythonAbi\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiKind\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiBuilder\u003c/code\u003e, \u003ccode\u003epyo3_build_config::InterpreterConfig::target_abi\u003c/code\u003e, and \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder::target_abi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBorrowed::get\u003c/code\u003e as an equivalent to \u003ccode\u003eBound::get\u003c/code\u003e and \u003ccode\u003ePy::get\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5849\"\u003e#5849\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyFrame::new\u003c/code\u003e, \u003ccode\u003ePyTraceBack::new\u003c/code\u003e, and \u003ccode\u003ePyFrameMethods::line_number\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5857\"\u003e#5857\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUntypedBuffer::obj\u003c/code\u003e to retrieve the Python object owning the buffer. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5870\"\u003e#5870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::new_with_value\u003c/code\u003e and \u003ccode\u003ePyCapsule::new_with_value_and_destructor\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5881\"\u003e#5881\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_context\u003c/code\u003e and \u003ccode\u003ePyErr::context\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a small CLI to \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5904\"\u003e#5904\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePython::version_str\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5921\"\u003e#5921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eTryFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003ePyRef\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyRefMut\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyClassGuard\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u0026lt;T\u0026gt;\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003eBound\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePy\u0026lt;T\u0026gt;\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyDictMethods::set_default\u003c/code\u003e and \u003ccode\u003ePyDictMethods::set_default_ref\u003c/code\u003e to allow atomically setting default values in a PyDict. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5955\"\u003e#5955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003ePyFrameMethods::outer|code|var|builtins|globals|locals\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5967\"\u003e#5967\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u003c/code\u003e conversions for \u003ccode\u003ePyErr\u003c/code\u003e from \u003ccode\u003estd::time::TryFromFloatSecsError\u003c/code\u003e, \u003ccode\u003estd::time::SystemTimeError\u003c/code\u003e, \u003ccode\u003estd::path::StripPrefixError\u003c/code\u003e, \u003ccode\u003estd::env::JoinPathsError\u003c/code\u003e, \u003ccode\u003estd::char::ParseCharError\u003c/code\u003e, and \u003ccode\u003estd::char::CharTryFromError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6001\"\u003e#6001\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6034\"\u003e#6034\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::import_pointer\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6066\"\u003e#6066\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6073\"\u003e#6073\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyListMethods::get_item_unchecked\u003c/code\u003e, \u003ccode\u003ePyTupleMethods::get_item_unchecked\u003c/code\u003e, and \u003ccode\u003ePyTupleMethods::get_borrowed_item_unchecked\u003c/code\u003e on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6075\"\u003e#6075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapSuper\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6104\"\u003e#6104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e to \u003ccode\u003epyo3::prelude\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eDebug\u003c/code\u003e impls for \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnable extending \u003ccode\u003ePyDateTime\u003c/code\u003e, \u003ccode\u003ePyDate\u003c/code\u003e, \u003ccode\u003ePyTime\u003c/code\u003e, \u003ccode\u003ePyDelta\u003c/code\u003e and \u003ccode\u003ePyTzInfo\u003c/code\u003e on abi3 with python 3.12+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6115\"\u003e#6115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyFunction\u003c/code\u003e available on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6117\"\u003e#6117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFFI definitions:\n\u003cul\u003e\n\u003cli\u003eAdded FFI definitions \u003ccode\u003ePyUnstable_Object_IsUniquelyReferenced\u003c/code\u003e, \u003ccode\u003ePyUnstable_Object_IsUniquelyReferencedTemporary\u003c/code\u003e, \u003ccode\u003ePyUnstable_EnableTryIncref\u003c/code\u003e, and \u003ccode\u003ePyUnstable_TryIncref\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5828\"\u003e#5828\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003effi::PyErr_GetHandledException\u003c/code\u003e and \u003ccode\u003effi::PyErr_SetHandledException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePy_HASH_SIPHASH13\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5891\"\u003e#5891\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePyStructSequence_UnnamedField\u003c/code\u003e constant on Python 3.9 and up (or 3.11 with abi3 features). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5892\"\u003e#5892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyUnstable_InterpreterFrame_GetCode\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLasti\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLine\u003c/code\u003e, and \u003ccode\u003ePyUnstable_ExecutableKinds\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5932\"\u003e#5932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyMarshal_WriteLongToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_WriteObjectToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadLongFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadShortFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadObjectFromFile\u003c/code\u003e, and \u003ccode\u003ePyMarshal_ReadLastObjectFromFile\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5934\"\u003e#5934\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyObject_GetAIter\u003c/code\u003e, \u003ccode\u003ePyAIter_Check\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyStringWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItem\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItemString\u003c/code\u003e, \u003ccode\u003ePySequence_ITEM\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_ITEM\u003c/code\u003e, and \u003ccode\u003ePySequence_Fast_ITEMS\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5942\"\u003e#5942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ecompat::PyObject_HasAttrWithError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5944\"\u003e#5944\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyDict_SetDefault\u003c/code\u003e, \u003ccode\u003ePyDict_SetDefaultRef\u003c/code\u003e, \u003ccode\u003ePyDict_ContainsString\u003c/code\u003e, \u003ccode\u003ePyDict_Pop\u003c/code\u003e, \u003ccode\u003ePyDict_PopString\u003c/code\u003e, \u003ccode\u003ePyDict_ClearWatcher\u003c/code\u003e, \u003ccode\u003ePyDict_Watch\u003c/code\u003e, \u003ccode\u003ePyDict_Unwatch\u003c/code\u003e, and \u003ccode\u003ePyFrozenDict_New\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5947\"\u003e#5947\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\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/PyO3/pyo3/commit/0f90242785fe0ce5e4e67c1da5ed361d410dbf8c\"\u003e\u003ccode\u003e0f90242\u003c/code\u003e\u003c/a\u003e release: 0.29.0 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6107\"\u003e#6107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/cd128ed50e6fffc4e49a08c149599a3b8bd21d5b\"\u003e\u003ccode\u003ecd128ed\u003c/code\u003e\u003c/a\u003e doc: mention abi3t, python3t.dll, and abi3t_compat folder in FAQ (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6124\"\u003e#6124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/7e2ef18b939488c446c9bcc1ed550e3ce22da5bd\"\u003e\u003ccode\u003e7e2ef18\u003c/code\u003e\u003c/a\u003e Avoid type checks in methods where CPython already guarantees the received ty...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f9301990e75e9f132aa3d4bf96a98d3abfac1c04\"\u003e\u003ccode\u003ef930199\u003c/code\u003e\u003c/a\u003e docs: additional detail in migration guide for 0.29 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6123\"\u003e#6123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91ab0d1b9bf26116d1a9fd8d833c32f22259da0b\"\u003e\u003ccode\u003e91ab0d1\u003c/code\u003e\u003c/a\u003e Enable Windows abi3t tests (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6106\"\u003e#6106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/fe0fdd518fb238ebf07480fde3c54a75041a1820\"\u003e\u003ccode\u003efe0fdd5\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ePyLong*\u003c/code\u003e API (3.14+) (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6016\"\u003e#6016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f41b1dfaf4fecce0edc6417a317671bdec593d07\"\u003e\u003ccode\u003ef41b1df\u003c/code\u003e\u003c/a\u003e Hang when reattaching after detach during shutdown (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6085\"\u003e#6085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/5ae66a859c2575b2b0ce0b2982f55388561513e6\"\u003e\u003ccode\u003e5ae66a8\u003c/code\u003e\u003c/a\u003e Fix double import on RustPython (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6122\"\u003e#6122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/ad4a510dddba60ac1887800365894839f7ba5a9c\"\u003e\u003ccode\u003ead4a510\u003c/code\u003e\u003c/a\u003e PyFunction: enable some extra tests with abi3 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6118\"\u003e#6118\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c79ac0ea2d7b751ea0191b4a5462d1de8f824728\"\u003e\u003ccode\u003ec79ac0e\u003c/code\u003e\u003c/a\u003e ci: Add test for minimum supported debug build of Python (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5852\"\u003e#5852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.23.5...v0.29.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=pyo3\u0026package-manager=cargo\u0026previous-version=0.23.5\u0026new-version=0.29.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 show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\nYou can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/imMamdouhaboammar/pymc-marketing-mcp/network/alerts).\n\n\u003c/details\u003e\n\n\u003c!-- This is an auto-generated description by cubic. --\u003e\n---\n## Summary by cubic\nBumps `pyo3` from 0.23.5 to 0.29.0 in `/crates/marketing_mcp_fast`. This major upgrade includes breaking changes and security fixes, so the crate may need code updates to compile and run correctly.\n\n\u003csup\u003eWritten for commit 9fc140f423a3db114e37f0ca7dfc9611b9506ecc. Summary will update on new commits.\u003c/sup\u003e\n\n\u003ca href=\"https://cubic.dev/pr/imMamdouhaboammar/pymc-marketing-mcp/pull/18?utm_source=github\" target=\"_blank\" rel=\"noopener noreferrer\" data-no-image-dialog=\"true\"\u003e\u003cpicture\u003e\u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"\u003e\u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://www.cubic.dev/buttons/review-in-cubic-light.svg\"\u003e\u003cimg alt=\"Review in cubic\" src=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"\u003e\u003c/picture\u003e\u003c/a\u003e\n\n\u003c!-- End of auto-generated description by cubic. --\u003e\n\n","html_url":"https://github.com/imMamdouhaboammar/pymc-marketing-mcp/pull/18","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/imMamdouhaboammar%2Fpymc-marketing-mcp/issues/18","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/18/packages"}],"issue_packages":[{"old_version":"0.28.3","new_version":"0.29.3","update_type":"minor","path":null,"pr_created_at":"2026-10-10T01:59:28.000Z","version_change":"0.28.3 → 0.29.3","issue":{"uuid":"5787064723","node_id":"PR_kwDOQChdoc8AAAABHpIvRw","number":201,"state":"open","title":"Build(deps): bump pyo3 from 0.28.3 to 0.29.3","user":"dependabot[bot]","labels":["dependencies","cargo"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-10T01:59:28.000Z","updated_at":"2026-10-10T02:00:11.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build(deps)","packages":[{"name":"pyo3","old_version":"0.28.3","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.28.3 to 0.29.3.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.29.2\u003c/h2\u003e\n\u003cp\u003eThis patch fixes a regression in PyO3 0.29.1 which broke PyPy 3.11 compatibility (\u003ccode\u003e#[pyclass]\u003c/code\u003e types would crash PyPy on instance deletion).\u003c/p\u003e\n\u003cp\u003eA few further fixes have also landed with similar themes to PyO3 0.29.1: fixes to minor reference counting bugs, rough edges which would cause crashes, issues which would cause failed builds, and fixes to \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation.\u003c/p\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/ImFeH2\"\u003e\u003ccode\u003e@​ImFeH2\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Tpt\"\u003e\u003ccode\u003e@​Tpt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/WaterWhisperer\"\u003e\u003ccode\u003e@​WaterWhisperer\u003c/code\u003e\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.29.2] - 2026-08-05\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePYO3_USE_RAW_DYLIB=0\u003c/code\u003e opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6185\"\u003e#6185\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.28.3...v0.29.3\"\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=pyo3\u0026package-manager=cargo\u0026previous-version=0.28.3\u0026new-version=0.29.3)](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 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/leynos/tei-rapporteur/pull/201","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/leynos%2Ftei-rapporteur/issues/201","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/201/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":"/eqats_rust_core","pr_created_at":"2026-10-09T12:28:47.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5778096389","node_id":"PR_kwDOTxc1Nc8AAAABHiB2hQ","number":3203,"state":"closed","title":"chore(deps): bump pyo3 from 0.29.2 to 0.29.3 in /eqats_rust_core","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2026-10-09T12:29:35.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-09T12:28:47.000Z","updated_at":"2026-10-09T12:29:38.000Z","time_to_close":48,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":"/eqats_rust_core","ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.29.2 to 0.29.3.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\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=pyo3\u0026package-manager=cargo\u0026previous-version=0.29.2\u0026new-version=0.29.3)](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 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/sparlit/EQATS/pull/3203","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sparlit%2FEQATS/issues/3203","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3203/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-08T09:03:25.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5758984681","node_id":"PR_kwDORA3pOM8AAAABHSwZaw","number":93,"state":"closed","title":"build(deps): bump the rust-dependencies group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-10-08T09:28:06.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-08T09:03:25.000Z","updated_at":"2026-10-08T09:28:15.000Z","time_to_close":1481,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"rust-dependencies","update_count":2,"packages":[{"name":"thiserror","old_version":"2.0.20","new_version":"2.0.21","repository_url":"https://github.com/dtolnay/thiserror"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the rust-dependencies group with 2 updates in the /rust directory: [thiserror](https://github.com/dtolnay/thiserror) and [pyo3](https://github.com/pyo3/pyo3).\n\nUpdates `thiserror` from 2.0.20 to 2.0.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/thiserror/releases\"\u003ethiserror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix parsing of generic unit variants in display expressions (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\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/dtolnay/thiserror/commit/b1827ee06f81a7d7f954e676771e19a97f9f8e3b\"\u003e\u003ccode\u003eb1827ee\u003c/code\u003e\u003c/a\u003e Release 2.0.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/58037b575a2a5543d0d54a49360554325b49f55a\"\u003e\u003ccode\u003e58037b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e from dtolnay/turbofish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/f82a0cf8f06c71263c2caa26e759f337d2778153\"\u003e\u003ccode\u003ef82a0cf\u003c/code\u003e\u003c/a\u003e Keep track of nested turbofish depth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72ea49262d6412ccbc08f1696dda8626409e657d\"\u003e\u003ccode\u003e72ea492\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72eea0d4ddb17ff9fa873aa74469de850021b22e\"\u003e\u003ccode\u003e72eea0d\u003c/code\u003e\u003c/a\u003e Resolve io_other_error clippy lint in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/07f09a2ec934df58508ce4fa5e7fbf27cca552c2\"\u003e\u003ccode\u003e07f09a2\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.74\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/2715388e8cc5787b3643251f7a7a637e89376688\"\u003e\u003ccode\u003e2715388\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/5a306c7d0a8588caaaaa6a7567aeb25c1c10719b\"\u003e\u003ccode\u003e5a306c7\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/ef9383b37d7c96b01e10df35d3e9e313c7b98b5a\"\u003e\u003ccode\u003eef9383b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-08-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/8336b8407fbfe69177c504cdbc379db20cf6f131\"\u003e\u003ccode\u003e8336b84\u003c/code\u003e\u003c/a\u003e Update ui tests for version 2.0.20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dtolnay/thiserror/compare/2.0.20...2.0.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/bigbio/mokume/pull/93","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigbio%2Fmokume/issues/93","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/93/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-08T06:00:35.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5756760235","node_id":"PR_kwDONFDlCM8AAAABHQ-RCg","number":617,"state":"open","title":"Bump the version-updates group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":["olegasics","minev-dev","andagaev"],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-08T06:00:35.000Z","updated_at":"2026-10-08T06:06:39.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"version-updates","update_count":2,"packages":[{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"tokio","old_version":"1.53.1","new_version":"1.53.2","repository_url":"https://github.com/tokio-rs/tokio"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the version-updates group with 2 updates in the / directory: [pyo3](https://github.com/pyo3/pyo3) and [tokio](https://github.com/tokio-rs/tokio).\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokio` from 1.53.1 to 1.53.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tokio-rs/tokio/releases\"\u003etokio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTokio v1.53.2\u003c/h2\u003e\n\u003ch1\u003e1.53.2 (October 3rd, 2026)\u003c/h1\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eio: revert \u0026quot;always cleanup \u003ccode\u003eAsyncFd\u003c/code\u003e registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eprocess: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix mpsc index wraparound in block reclamation (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: forget mpsc \u003ccode\u003ePermit\u003c/code\u003e before sending value (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: validate \u003ccode\u003eMAX_PERMITS\u003c/code\u003e in \u003ccode\u003eSemaphore::acquire\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: wake broadcast \u003ccode\u003eSender::closed\u003c/code\u003e outside mutex (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etask: drop replaced waker outside lock in \u003ccode\u003eJoinSet\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop timer lock before dropping waker in \u003ccode\u003eclear_entry\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: expire timers directly on shutdown without rotating wheel (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed (unstable)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: clamp \u003ccode\u003eio_uring\u003c/code\u003e read length to \u003ccode\u003eu32::MAX\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: ignore \u003ccode\u003ecurrent_thread\u003c/code\u003e task dumps from other runtimes (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: preserve \u003ccode\u003eio_uring\u003c/code\u003e context if a completion waker panics (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix semaphore use-after-free and permit leak on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etaskdump: restore deferred leaf wakes during capture (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop stored waker when cancelling alt timer entry (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8445\"\u003etokio-rs/tokio#8445\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8572\"\u003etokio-rs/tokio#8572\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8540\"\u003etokio-rs/tokio#8540\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8542\"\u003etokio-rs/tokio#8542\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8544\"\u003etokio-rs/tokio#8544\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8546\"\u003etokio-rs/tokio#8546\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8548\"\u003etokio-rs/tokio#8548\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8550\"\u003etokio-rs/tokio#8550\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8552\"\u003etokio-rs/tokio#8552\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8554\"\u003etokio-rs/tokio#8554\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8558\"\u003etokio-rs/tokio#8558\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8560\"\u003etokio-rs/tokio#8560\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8562\"\u003etokio-rs/tokio#8562\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8564\"\u003etokio-rs/tokio#8564\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8566\"\u003etokio-rs/tokio#8566\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8570\"\u003etokio-rs/tokio#8570\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8574\"\u003etokio-rs/tokio#8574\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ff0c4068a4ba5f3af0fe3c5657ba42879b6ea599\"\u003e\u003ccode\u003eff0c406\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.53.2 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8580\"\u003e#8580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/a762700e41bf027630ba4620cfd80d127b7c801d\"\u003e\u003ccode\u003ea762700\u003c/code\u003e\u003c/a\u003e Merge 'tokio-1.51.5' into 'tokio-1.53.x' (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8577\"\u003e#8577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ec31a9f62c9426cec415c8c79e0608dd2866bbf7\"\u003e\u003ccode\u003eec31a9f\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.51.5 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8579\"\u003e#8579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/625c85108da5ad0d482702a21d7d58a56ea06a48\"\u003e\u003ccode\u003e625c851\u003c/code\u003e\u003c/a\u003e sync: assign semaphore permits before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/832dd233293eaa59ba19cc6f5dc4753aab55ac13\"\u003e\u003ccode\u003e832dd23\u003c/code\u003e\u003c/a\u003e sync: avoid leaking semaphore permits on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/826954a2f3b6f595121c38875a5d81ca3e5f6cc6\"\u003e\u003ccode\u003e826954a\u003c/code\u003e\u003c/a\u003e sync: unlink semaphore waiter before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/9a479922501eb47102ab844fa40e4b28d1a3c250\"\u003e\u003ccode\u003e9a47992\u003c/code\u003e\u003c/a\u003e process: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/2fc5972b8bd6f51d1ad6df3bcc1a1927d1702663\"\u003e\u003ccode\u003e2fc5972\u003c/code\u003e\u003c/a\u003e fs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/85a6d13882e2ccf5c24131b282bab0214b0a493e\"\u003e\u003ccode\u003e85a6d13\u003c/code\u003e\u003c/a\u003e io: revert \u0026quot;always cleanup AsyncFd registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/436faa2da3970817653fef98c9abc6c8b4367f51\"\u003e\u003ccode\u003e436faa2\u003c/code\u003e\u003c/a\u003e rt: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tokio-rs/tokio/compare/tokio-1.53.1...tokio-1.53.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/opencloudtool/opencloudtool/pull/617","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencloudtool%2Fopencloudtool/issues/617","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/617/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-08T05:24:13.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5756406540","node_id":"PR_kwDOT-QI6c8AAAABHQsLig","number":20,"state":"open","title":"chore(deps): bump pyo3 from 0.29.2 to 0.29.3","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-08T05:24:13.000Z","updated_at":"2026-10-08T05:24:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.29.2 to 0.29.3.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\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=pyo3\u0026package-manager=cargo\u0026previous-version=0.29.2\u0026new-version=0.29.3)](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 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/yudaprama/office_oxide/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yudaprama%2Foffice_oxide/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-06T23:11:16.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5736628113","node_id":"PR_kwDORpqulM8AAAABHA46MA","number":823,"state":"open","title":"chore(deps): bump the cargo-minor-patch group across 1 directory with 6 updates","user":"dependabot[bot]","labels":["dependencies","rust","release-notes:internal"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-06T23:11:16.000Z","updated_at":"2026-10-06T23:32:49.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"cargo-minor-patch","update_count":6,"packages":[{"name":"toml","old_version":"1.1.4+spec-1.1.0","new_version":"1.1.6+spec-1.1.0","repository_url":"https://github.com/toml-rs/toml"},{"name":"thiserror","old_version":"2.0.20","new_version":"2.0.21","repository_url":"https://github.com/dtolnay/thiserror"},{"name":"clap","old_version":"4.6.6","new_version":"4.6.7","repository_url":"https://github.com/clap-rs/clap"},{"name":"libc","old_version":"0.2.189","new_version":"0.2.190","repository_url":"https://github.com/rust-lang/libc"},{"name":"tokio","old_version":"1.53.1","new_version":"1.53.2","repository_url":"https://github.com/tokio-rs/tokio"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the cargo-minor-patch group with 6 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [toml](https://github.com/toml-rs/toml) | `1.1.4+spec-1.1.0` | `1.1.6+spec-1.1.0` |\n| [thiserror](https://github.com/dtolnay/thiserror) | `2.0.20` | `2.0.21` |\n| [clap](https://github.com/clap-rs/clap) | `4.6.6` | `4.6.7` |\n| [libc](https://github.com/rust-lang/libc) | `0.2.189` | `0.2.190` |\n| [tokio](https://github.com/tokio-rs/tokio) | `1.53.1` | `1.53.2` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n\n\nUpdates `toml` from 1.1.4+spec-1.1.0 to 1.1.6+spec-1.1.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/572c005d80cca5f7bd163805c2f33ba0a5207b6d\"\u003e\u003ccode\u003e572c005\u003c/code\u003e\u003c/a\u003e chore: Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/66d0c53e1ec7cfc61f98c30b92f72e2ad1df4536\"\u003e\u003ccode\u003e66d0c53\u003c/code\u003e\u003c/a\u003e docs: Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/07af4e7644d34d2d784bcd4f570c0619ee1626b2\"\u003e\u003ccode\u003e07af4e7\u003c/code\u003e\u003c/a\u003e perf: Reduce allocations in toml_edit parsing and dumping (\u003ca href=\"https://redirect.github.com/toml-rs/toml/issues/1215\"\u003e#1215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/0ff90dbd7d7931b995f91cac661a12818cfd7ab7\"\u003e\u003ccode\u003e0ff90db\u003c/code\u003e\u003c/a\u003e perf(display): Write encoded strings directly\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/efb25365450e5512efa76457fcd53b0bb1ee9c41\"\u003e\u003ccode\u003eefb2536\u003c/code\u003e\u003c/a\u003e perf(display): Move generated representation strings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/075c444fa05f359cce53dda0f1382a07ad72776e\"\u003e\u003ccode\u003e075c444\u003c/code\u003e\u003c/a\u003e refactor(display): Consolidate key-path encoding\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/b48f33869f1024949945157c0ab540a114676fc0\"\u003e\u003ccode\u003eb48f338\u003c/code\u003e\u003c/a\u003e perf(display): Borrow table keys during document output\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/c6c1de348f6e276a58ce57ffdcdeb51065698709\"\u003e\u003ccode\u003ec6c1de3\u003c/code\u003e\u003c/a\u003e perf(parser): Move completed table header keys\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/ec904630a54a9857babc7eab99c39d4bdc8173c4\"\u003e\u003ccode\u003eec90463\u003c/code\u003e\u003c/a\u003e perf(parser): Borrow input when creating editable documents\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/toml-rs/toml/commit/d76a48af2f5bb783969295cf7dbbfb447f324ca1\"\u003e\u003ccode\u003ed76a48a\u003c/code\u003e\u003c/a\u003e test: Benchmark rendering generated keys and values\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/toml-rs/toml/compare/toml-v1.1.4...toml-v1.1.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `thiserror` from 2.0.20 to 2.0.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/thiserror/releases\"\u003ethiserror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix parsing of generic unit variants in display expressions (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\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/dtolnay/thiserror/commit/b1827ee06f81a7d7f954e676771e19a97f9f8e3b\"\u003e\u003ccode\u003eb1827ee\u003c/code\u003e\u003c/a\u003e Release 2.0.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/58037b575a2a5543d0d54a49360554325b49f55a\"\u003e\u003ccode\u003e58037b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e from dtolnay/turbofish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/f82a0cf8f06c71263c2caa26e759f337d2778153\"\u003e\u003ccode\u003ef82a0cf\u003c/code\u003e\u003c/a\u003e Keep track of nested turbofish depth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72ea49262d6412ccbc08f1696dda8626409e657d\"\u003e\u003ccode\u003e72ea492\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72eea0d4ddb17ff9fa873aa74469de850021b22e\"\u003e\u003ccode\u003e72eea0d\u003c/code\u003e\u003c/a\u003e Resolve io_other_error clippy lint in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/07f09a2ec934df58508ce4fa5e7fbf27cca552c2\"\u003e\u003ccode\u003e07f09a2\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.74\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/2715388e8cc5787b3643251f7a7a637e89376688\"\u003e\u003ccode\u003e2715388\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/5a306c7d0a8588caaaaa6a7567aeb25c1c10719b\"\u003e\u003ccode\u003e5a306c7\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/ef9383b37d7c96b01e10df35d3e9e313c7b98b5a\"\u003e\u003ccode\u003eef9383b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-08-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/8336b8407fbfe69177c504cdbc379db20cf6f131\"\u003e\u003ccode\u003e8336b84\u003c/code\u003e\u003c/a\u003e Update ui tests for version 2.0.20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dtolnay/thiserror/compare/2.0.20...2.0.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `clap` from 4.6.6 to 4.6.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/clap-rs/clap/releases\"\u003eclap's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.6.7\u003c/h2\u003e\n\u003ch2\u003e[4.6.7] - 2026-09-14\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Add \u003ccode\u003e#[command(defer = \u0026lt;bool\u0026gt;)]\u003c/code\u003e attribute to opt-in to lazy initialisation of subcommands\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/clap-rs/clap/blob/main/CHANGELOG.md\"\u003eclap's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.6.7] - 2026-09-14\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Add \u003ccode\u003e#[command(defer = \u0026lt;bool\u0026gt;)]\u003c/code\u003e attribute to opt-in to lazy initialisation of subcommands\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/clap-rs/clap/commit/d3e59a9ab214910b9dad02921b7ef42c6400de9b\"\u003e\u003ccode\u003ed3e59a9\u003c/code\u003e\u003c/a\u003e chore: Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/d997f878c484e02b2935d32a7b67afe990e91227\"\u003e\u003ccode\u003ed997f87\u003c/code\u003e\u003c/a\u003e docs: Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/fb6058cc38cf6f4b07b8db89c850fc80e059e222\"\u003e\u003ccode\u003efb6058c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6409\"\u003e#6409\u003c/a\u003e from heaths/pwsh-support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/2310870f7a9fe4c39f5bb5620261a06ac9aaa0b1\"\u003e\u003ccode\u003e2310870\u003c/code\u003e\u003c/a\u003e test(complete): Add tests for completer_for_path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/5967c17393a09f90112cdc5b2c20a1383f0bd8e4\"\u003e\u003ccode\u003e5967c17\u003c/code\u003e\u003c/a\u003e refactor(complete): Move shell detection to Shells\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/594602bb29f374e49da5029df63e5c740c723ad0\"\u003e\u003ccode\u003e594602b\u003c/code\u003e\u003c/a\u003e fix(complete): Detect pwsh for PowerShell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/3a4f2d031b5110aaaac40f1cb1d6c0b8ff619df8\"\u003e\u003ccode\u003e3a4f2d0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6427\"\u003e#6427\u003c/a\u003e from clap-rs/renovate/shlex-2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/67ebaed4ac95a83d5d7cc22d64ee0fc162ae1db3\"\u003e\u003ccode\u003e67ebaed\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6426\"\u003e#6426\u003c/a\u003e from clap-rs/renovate/actions-checkout-7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/c968b136d0e6f560c08b06a844a20f2798a00096\"\u003e\u003ccode\u003ec968b13\u003c/code\u003e\u003c/a\u003e chore(deps): Update Rust crate shlex to v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/8f247cbf58c582a755ee4dbe62a2390d93b9f8eb\"\u003e\u003ccode\u003e8f247cb\u003c/code\u003e\u003c/a\u003e chore(deps): Update actions/checkout action to v7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/clap-rs/clap/compare/clap_complete-v4.6.6...clap_complete-v4.6.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `libc` from 0.2.189 to 0.2.190\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/libc/releases\"\u003elibc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.2.190\u003c/h2\u003e\n\u003cp\u003eThere is now a single config for enabling 64-bit \u003ccode\u003etime_t\u003c/code\u003e: \u003ccode\u003elibc_unstable_time64\u003c/code\u003e. This can be set\nunconditionally; it opts in to 64-bit \u003ccode\u003etime_t\u003c/code\u003e on the following platforms that use 32-bit by\ndefault:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e32-bit Linux-GNU\u003c/li\u003e\n\u003cli\u003e32-bit Linux-uClibc\u003c/li\u003e\n\u003cli\u003e32-bit Linux-musl. Note that setting this flag also enables some other changes that happend in\nmusl v1.2.\u003c/li\u003e\n\u003cli\u003e32-bit Windows-GNU\u003c/li\u003e\n\u003cli\u003eESP-IDF (all targets with this environment are 32-bit)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMost other 32-bit platforms are either already using 64-bit \u003ccode\u003etime_t\u003c/code\u003e, or are considered legacy\nand will not be gaining support from their upstream maintainers.\u003c/p\u003e\n\u003cp\u003eYou can enable this using \u003ccode\u003eRUSTFLAGS\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_time64' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote that there may still be some changes to features gated by this config option, hence \u0026quot;unstable\u0026quot;\nin its name. In the near future we will rename it to just \u003ccode\u003elibc_time64\u003c/code\u003e. Until then, please test it\nout and report any bugs you find!\u003c/p\u003e\n\u003ch3\u003eSupport\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd initial support for HelenOS (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4355\"\u003e#4355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cp\u003eWe are slowly filling out the \u003ccode\u003eDefault\u003c/code\u003e implementations, to reduce the need for \u003ccode\u003emem::zeroed()\u003c/code\u003e in user code:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUnix: Implement \u003ccode\u003eDefault\u003c/code\u003e for a number of structs, especially on Apple platforms (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5576\"\u003e#5576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux, NetBSD: Give \u003ccode\u003estatvfs\u003c/code\u003e a \u003ccode\u003eDefault\u003c/code\u003e impl (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5583\"\u003e#5583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux: Add \u003ccode\u003eDefault\u003c/code\u003e to a \u003ccode\u003elinux/can.rs\u003c/code\u003e structs (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5257\"\u003e#5257\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther additions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eExpose the \u003ccode\u003elibc_unstable_time64\u003c/code\u003e cfg (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5411\"\u003e#5411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid, Glibc: Add \u003ccode\u003epthread_gettid_np\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5359\"\u003e#5359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add \u003ccode\u003eRTLD_NEXT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5323\"\u003e#5323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add reuseport BPF socket options (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5366\"\u003e#5366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add TCP header flags, options and SACK limits (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5358\"\u003e#5358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eNET_RT_DUMP2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5442\"\u003e#5442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5558\"\u003e#5558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eBPF_WORDALIGN\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5320\"\u003e#5320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003elchmod\u003c/code\u003e and \u003ccode\u003elchflags\u003c/code\u003e where supported (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5400\"\u003e#5400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eminherit\u003c/code\u003e and related constants (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4849\"\u003e#4849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Add more links to public headers and manual pages (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5407\"\u003e#5407\u003c/a\u003e), (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5485\"\u003e#5485\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/rust-lang/libc/blob/0.2.190/CHANGELOG.md\"\u003elibc's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.189...0.2.190\"\u003e0.2.190\u003c/a\u003e - 2026-10-02\u003c/h2\u003e\n\u003cp\u003eThere is now a single config for enabling 64-bit \u003ccode\u003etime_t\u003c/code\u003e: \u003ccode\u003elibc_unstable_time64\u003c/code\u003e. This can be set\nunconditionally; it opts in to 64-bit \u003ccode\u003etime_t\u003c/code\u003e on the following platforms that use 32-bit by\ndefault:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e32-bit Linux-GNU\u003c/li\u003e\n\u003cli\u003e32-bit Linux-uClibc\u003c/li\u003e\n\u003cli\u003e32-bit Linux-musl. Note that setting this flag also enables some other changes that happend in\nmusl v1.2.\u003c/li\u003e\n\u003cli\u003e32-bit Windows-GNU\u003c/li\u003e\n\u003cli\u003eESP-IDF (all targets with this environment are 32-bit)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMost other 32-bit platforms are either already using 64-bit \u003ccode\u003etime_t\u003c/code\u003e, or are considered legacy\nand will not be gaining support from their upstream maintainers.\u003c/p\u003e\n\u003cp\u003eYou can enable this using \u003ccode\u003eRUSTFLAGS\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_time64' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote that there may still be some changes to features gated by this config option, hence \u0026quot;unstable\u0026quot;\nin its name. In the near future we will rename it to just \u003ccode\u003elibc_time64\u003c/code\u003e. Until then, please test it\nout and report any bugs you find!\u003c/p\u003e\n\u003ch3\u003eSupport\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd initial support for HelenOS (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4355\"\u003e#4355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cp\u003eWe are slowly filling out the \u003ccode\u003eDefault\u003c/code\u003e implementations, to reduce the need for \u003ccode\u003emem::zeroed()\u003c/code\u003e in user code:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUnix: Implement \u003ccode\u003eDefault\u003c/code\u003e for a number of structs, especially on Apple platforms (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5576\"\u003e#5576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux, NetBSD: Give \u003ccode\u003estatvfs\u003c/code\u003e a \u003ccode\u003eDefault\u003c/code\u003e impl (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5583\"\u003e#5583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux: Add \u003ccode\u003eDefault\u003c/code\u003e to a \u003ccode\u003elinux/can.rs\u003c/code\u003e structs (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5257\"\u003e#5257\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther additions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eExpose the \u003ccode\u003elibc_unstable_time64\u003c/code\u003e cfg (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5411\"\u003e#5411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid, Glibc: Add \u003ccode\u003epthread_gettid_np\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5359\"\u003e#5359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add \u003ccode\u003eRTLD_NEXT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5323\"\u003e#5323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add reuseport BPF socket options (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5366\"\u003e#5366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add TCP header flags, options and SACK limits (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5358\"\u003e#5358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eNET_RT_DUMP2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5442\"\u003e#5442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5558\"\u003e#5558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eBPF_WORDALIGN\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5320\"\u003e#5320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003elchmod\u003c/code\u003e and \u003ccode\u003elchflags\u003c/code\u003e where supported (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5400\"\u003e#5400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eminherit\u003c/code\u003e and related constants (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4849\"\u003e#4849\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/rust-lang/libc/commit/7b0ab5528dc7f361f3a0b4c06c2cad9971617f75\"\u003e\u003ccode\u003e7b0ab55\u003c/code\u003e\u003c/a\u003e ci: Rename \u003ccode\u003epublish_0.2.yml\u003c/code\u003e to \u003ccode\u003erelease.yaml\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/ac85dde5fc269ab4a8cd935d3f76adf85372677c\"\u003e\u003ccode\u003eac85dde\u003c/code\u003e\u003c/a\u003e ci: Sync release permissions with \u003ccode\u003emain\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8f8cd2032060e1477c08077cd5f89215384723e2\"\u003e\u003ccode\u003e8f8cd20\u003c/code\u003e\u003c/a\u003e libc: Release 0.2.190\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/052c6e6a0186eeecf22c743d57c65a9963571241\"\u003e\u003ccode\u003e052c6e6\u003c/code\u003e\u003c/a\u003e changelog: Fix an incorrect commit link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/ea19fd7fba435c629ed247de7138d5cdb1dea309\"\u003e\u003ccode\u003eea19fd7\u003c/code\u003e\u003c/a\u003e test: Remove explicit \u003ccode\u003elibc\u003c/code\u003e version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/6dbf3a29a0a972087b684bc6d6cbf20f92143b66\"\u003e\u003ccode\u003e6dbf3a2\u003c/code\u003e\u003c/a\u003e dragonfly: Move \u003ccode\u003eINHERIT_ZERO\u003c/code\u003e to the freebsd module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8a64766c8514865dea77cfc3216f5a9dc38c6728\"\u003e\u003ccode\u003e8a64766\u003c/code\u003e\u003c/a\u003e apple: add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/28de5147ff5665b835472f00ead49da71084a593\"\u003e\u003ccode\u003e28de514\u003c/code\u003e\u003c/a\u003e linux, netbsd: Give statvfs a \u003ccode\u003eDefault\u003c/code\u003e impl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/a58a95f01d0561e75261052f5d8b3ad188f1ae4e\"\u003e\u003ccode\u003ea58a95f\u003c/code\u003e\u003c/a\u003e cygwin: Change \u003ccode\u003ePOSIX_SPAWN_*\u003c/code\u003e flags to \u003ccode\u003ec_short\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/d175264e718db4f216df7aad5f1291fd0ec34139\"\u003e\u003ccode\u003ed175264\u003c/code\u003e\u003c/a\u003e apple: \u003ccode\u003etimeval32\u003c/code\u003e is exhaustive\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.189...0.2.190\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokio` from 1.53.1 to 1.53.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tokio-rs/tokio/releases\"\u003etokio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTokio v1.53.2\u003c/h2\u003e\n\u003ch1\u003e1.53.2 (October 3rd, 2026)\u003c/h1\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eio: revert \u0026quot;always cleanup \u003ccode\u003eAsyncFd\u003c/code\u003e registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eprocess: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix mpsc index wraparound in block reclamation (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: forget mpsc \u003ccode\u003ePermit\u003c/code\u003e before sending value (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: validate \u003ccode\u003eMAX_PERMITS\u003c/code\u003e in \u003ccode\u003eSemaphore::acquire\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: wake broadcast \u003ccode\u003eSender::closed\u003c/code\u003e outside mutex (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etask: drop replaced waker outside lock in \u003ccode\u003eJoinSet\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop timer lock before dropping waker in \u003ccode\u003eclear_entry\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: expire timers directly on shutdown without rotating wheel (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed (unstable)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: clamp \u003ccode\u003eio_uring\u003c/code\u003e read length to \u003ccode\u003eu32::MAX\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: ignore \u003ccode\u003ecurrent_thread\u003c/code\u003e task dumps from other runtimes (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: preserve \u003ccode\u003eio_uring\u003c/code\u003e context if a completion waker panics (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix semaphore use-after-free and permit leak on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etaskdump: restore deferred leaf wakes during capture (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop stored waker when cancelling alt timer entry (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8445\"\u003etokio-rs/tokio#8445\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8572\"\u003etokio-rs/tokio#8572\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8540\"\u003etokio-rs/tokio#8540\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8542\"\u003etokio-rs/tokio#8542\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8544\"\u003etokio-rs/tokio#8544\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8546\"\u003etokio-rs/tokio#8546\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8548\"\u003etokio-rs/tokio#8548\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8550\"\u003etokio-rs/tokio#8550\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8552\"\u003etokio-rs/tokio#8552\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8554\"\u003etokio-rs/tokio#8554\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8558\"\u003etokio-rs/tokio#8558\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8560\"\u003etokio-rs/tokio#8560\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8562\"\u003etokio-rs/tokio#8562\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8564\"\u003etokio-rs/tokio#8564\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8566\"\u003etokio-rs/tokio#8566\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8570\"\u003etokio-rs/tokio#8570\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8574\"\u003etokio-rs/tokio#8574\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ff0c4068a4ba5f3af0fe3c5657ba42879b6ea599\"\u003e\u003ccode\u003eff0c406\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.53.2 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8580\"\u003e#8580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/a762700e41bf027630ba4620cfd80d127b7c801d\"\u003e\u003ccode\u003ea762700\u003c/code\u003e\u003c/a\u003e Merge 'tokio-1.51.5' into 'tokio-1.53.x' (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8577\"\u003e#8577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ec31a9f62c9426cec415c8c79e0608dd2866bbf7\"\u003e\u003ccode\u003eec31a9f\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.51.5 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8579\"\u003e#8579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/625c85108da5ad0d482702a21d7d58a56ea06a48\"\u003e\u003ccode\u003e625c851\u003c/code\u003e\u003c/a\u003e sync: assign semaphore permits before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/832dd233293eaa59ba19cc6f5dc4753aab55ac13\"\u003e\u003ccode\u003e832dd23\u003c/code\u003e\u003c/a\u003e sync: avoid leaking semaphore permits on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/826954a2f3b6f595121c38875a5d81ca3e5f6cc6\"\u003e\u003ccode\u003e826954a\u003c/code\u003e\u003c/a\u003e sync: unlink semaphore waiter before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/9a479922501eb47102ab844fa40e4b28d1a3c250\"\u003e\u003ccode\u003e9a47992\u003c/code\u003e\u003c/a\u003e process: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/2fc5972b8bd6f51d1ad6df3bcc1a1927d1702663\"\u003e\u003ccode\u003e2fc5972\u003c/code\u003e\u003c/a\u003e fs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/85a6d13882e2ccf5c24131b282bab0214b0a493e\"\u003e\u003ccode\u003e85a6d13\u003c/code\u003e\u003c/a\u003e io: revert \u0026quot;always cleanup AsyncFd registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/436faa2da3970817653fef98c9abc6c8b4367f51\"\u003e\u003ccode\u003e436faa2\u003c/code\u003e\u003c/a\u003e rt: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tokio-rs/tokio/compare/tokio-1.53.1...tokio-1.53.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fulgur-rs/fulgur/pull/823","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fulgur-rs%2Ffulgur/issues/823","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/823/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-06T22:30:59.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5736275125","node_id":"PR_kwDORFPBjM8AAAABHAnFSw","number":2522,"state":"open","title":"chore(deps): bump the rust-dependencies group across 1 directory with 6 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-06T22:30:59.000Z","updated_at":"2026-10-06T22:31:57.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"rust-dependencies","update_count":6,"packages":[{"name":"tokio","old_version":"1.53.1","new_version":"1.53.2","repository_url":"https://github.com/tokio-rs/tokio"},{"name":"insta","old_version":"1.48.0","new_version":"1.49.0","repository_url":"https://github.com/mitsuhiko/insta"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"napi","old_version":"3.13.0","new_version":"3.14.0","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-derive","old_version":"3.6.9","new_version":"3.6.10","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-build","old_version":"2.5.0","new_version":"2.6.0","repository_url":"https://github.com/napi-rs/napi-rs"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the rust-dependencies group with 6 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [tokio](https://github.com/tokio-rs/tokio) | `1.53.1` | `1.53.2` |\n| [insta](https://github.com/mitsuhiko/insta) | `1.48.0` | `1.49.0` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [napi](https://github.com/napi-rs/napi-rs) | `3.13.0` | `3.14.0` |\n| [napi-derive](https://github.com/napi-rs/napi-rs) | `3.6.9` | `3.6.10` |\n| [napi-build](https://github.com/napi-rs/napi-rs) | `2.5.0` | `2.6.0` |\n\n\nUpdates `tokio` from 1.53.1 to 1.53.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tokio-rs/tokio/releases\"\u003etokio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTokio v1.53.2\u003c/h2\u003e\n\u003ch1\u003e1.53.2 (October 3rd, 2026)\u003c/h1\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eio: revert \u0026quot;always cleanup \u003ccode\u003eAsyncFd\u003c/code\u003e registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eprocess: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix mpsc index wraparound in block reclamation (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: forget mpsc \u003ccode\u003ePermit\u003c/code\u003e before sending value (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: validate \u003ccode\u003eMAX_PERMITS\u003c/code\u003e in \u003ccode\u003eSemaphore::acquire\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: wake broadcast \u003ccode\u003eSender::closed\u003c/code\u003e outside mutex (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etask: drop replaced waker outside lock in \u003ccode\u003eJoinSet\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop timer lock before dropping waker in \u003ccode\u003eclear_entry\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: expire timers directly on shutdown without rotating wheel (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed (unstable)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efs: clamp \u003ccode\u003eio_uring\u003c/code\u003e read length to \u003ccode\u003eu32::MAX\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: ignore \u003ccode\u003ecurrent_thread\u003c/code\u003e task dumps from other runtimes (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ert: preserve \u003ccode\u003eio_uring\u003c/code\u003e context if a completion waker panics (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esync: fix semaphore use-after-free and permit leak on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etaskdump: restore deferred leaf wakes during capture (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etime: drop stored waker when cancelling alt timer entry (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8445\"\u003e#8445\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8445\"\u003etokio-rs/tokio#8445\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8572\"\u003e#8572\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8572\"\u003etokio-rs/tokio#8572\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8540\"\u003etokio-rs/tokio#8540\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8542\"\u003etokio-rs/tokio#8542\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8544\"\u003e#8544\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8544\"\u003etokio-rs/tokio#8544\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8546\"\u003e#8546\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8546\"\u003etokio-rs/tokio#8546\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8548\"\u003e#8548\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8548\"\u003etokio-rs/tokio#8548\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8550\"\u003e#8550\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8550\"\u003etokio-rs/tokio#8550\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8552\"\u003e#8552\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8552\"\u003etokio-rs/tokio#8552\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8554\"\u003e#8554\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8554\"\u003etokio-rs/tokio#8554\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8558\"\u003e#8558\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8558\"\u003etokio-rs/tokio#8558\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8560\"\u003e#8560\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8560\"\u003etokio-rs/tokio#8560\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8562\"\u003etokio-rs/tokio#8562\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8564\"\u003etokio-rs/tokio#8564\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8566\"\u003e#8566\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8566\"\u003etokio-rs/tokio#8566\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8570\"\u003e#8570\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8570\"\u003etokio-rs/tokio#8570\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/tokio-rs/tokio/pull/8574\"\u003etokio-rs/tokio#8574\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ff0c4068a4ba5f3af0fe3c5657ba42879b6ea599\"\u003e\u003ccode\u003eff0c406\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.53.2 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8580\"\u003e#8580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/a762700e41bf027630ba4620cfd80d127b7c801d\"\u003e\u003ccode\u003ea762700\u003c/code\u003e\u003c/a\u003e Merge 'tokio-1.51.5' into 'tokio-1.53.x' (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8577\"\u003e#8577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/ec31a9f62c9426cec415c8c79e0608dd2866bbf7\"\u003e\u003ccode\u003eec31a9f\u003c/code\u003e\u003c/a\u003e chore: prepare Tokio v1.51.5 (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8579\"\u003e#8579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/625c85108da5ad0d482702a21d7d58a56ea06a48\"\u003e\u003ccode\u003e625c851\u003c/code\u003e\u003c/a\u003e sync: assign semaphore permits before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/832dd233293eaa59ba19cc6f5dc4753aab55ac13\"\u003e\u003ccode\u003e832dd23\u003c/code\u003e\u003c/a\u003e sync: avoid leaking semaphore permits on tracing panic (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/826954a2f3b6f595121c38875a5d81ca3e5f6cc6\"\u003e\u003ccode\u003e826954a\u003c/code\u003e\u003c/a\u003e sync: unlink semaphore waiter before emitting tracing event (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8542\"\u003e#8542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/9a479922501eb47102ab844fa40e4b28d1a3c250\"\u003e\u003ccode\u003e9a47992\u003c/code\u003e\u003c/a\u003e process: unregister Windows wait before closing child handle (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8564\"\u003e#8564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/2fc5972b8bd6f51d1ad6df3bcc1a1927d1702663\"\u003e\u003ccode\u003e2fc5972\u003c/code\u003e\u003c/a\u003e fs: handle integer overflow in buffered relative seek (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8574\"\u003e#8574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/85a6d13882e2ccf5c24131b282bab0214b0a493e\"\u003e\u003ccode\u003e85a6d13\u003c/code\u003e\u003c/a\u003e io: revert \u0026quot;always cleanup AsyncFd registration list on deregister\u0026quot; (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8540\"\u003e#8540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/tokio/commit/436faa2da3970817653fef98c9abc6c8b4367f51\"\u003e\u003ccode\u003e436faa2\u003c/code\u003e\u003c/a\u003e rt: drop blocking pool mutex before shutting down rejected task (\u003ca href=\"https://redirect.github.com/tokio-rs/tokio/issues/8562\"\u003e#8562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tokio-rs/tokio/compare/tokio-1.53.1...tokio-1.53.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `insta` from 1.48.0 to 1.49.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mitsuhiko/insta/releases\"\u003einsta's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.49.0\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003eOption\u0026lt;\u0026amp;OsStr\u0026gt;\u003c/code\u003e snapshot names, such as \u003ccode\u003ePath::file_name()\u003c/code\u003e,\nwithout explicit string conversion. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/929\"\u003e#929\u003c/a\u003e (\u003ca href=\"https://github.com/dislogical\"\u003e\u003ccode\u003e@​dislogical\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd prebuilt \u003ccode\u003ecargo-insta\u003c/code\u003e binaries for ARM64 Linux\n(\u003ccode\u003eaarch64-unknown-linux-gnu\u003c/code\u003e). \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/942\"\u003e#942\u003c/a\u003e (\u003ca href=\"https://github.com/aljohri\"\u003e\u003ccode\u003e@​aljohri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON serialization of maps keyed by unit enum variants. Keys use the\nserialized variant name, including serde renames. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/934\"\u003e#934\u003c/a\u003e (\u003ca href=\"https://github.com/teddytennant\"\u003e\u003ccode\u003e@​teddytennant\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove trailing semicolons from serialization macro bodies to avoid\ncompiler warnings when used in expression position. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/940\"\u003e#940\u003c/a\u003e (\u003ca href=\"https://github.com/Tiwalun\"\u003e\u003ccode\u003e@​Tiwalun\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention \u003ccode\u003eINSTA_UPDATE=always\u003c/code\u003e in snapshot mismatch hints for file\nsnapshots. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/927\"\u003e#927\u003c/a\u003e (\u003ca href=\"https://github.com/hiro-nikaitou\"\u003e\u003ccode\u003e@​hiro-nikaitou\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate the lockfile's \u003ccode\u003etempfile\u003c/code\u003e and \u003ccode\u003erustix\u003c/code\u003e dependencies to fix builds\nwith newer Rust toolchains. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/939\"\u003e#939\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecargo insta test --all-targets --test-runner nextest\u003c/code\u003e failing with\n\u0026quot;Can't mix --doc with other target selecting options\u0026quot;. Like \u003ccode\u003ecargo test --all-targets\u003c/code\u003e, it no longer runs doctests. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/460\"\u003e#460\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall cargo-insta 1.49.0\u003c/h2\u003e\n\u003ch3\u003eInstall prebuilt binaries via shell script\u003c/h3\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003ecurl --proto '=https' --tlsv1.2 -LsSf https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-installer.sh | sh\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eInstall prebuilt binaries via powershell script\u003c/h3\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003epowershell -ExecutionPolicy Bypass -c \u0026quot;irm https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-installer.ps1 | iex\u0026quot;\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eDownload cargo-insta 1.49.0\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eFile\u003c/th\u003e\n\u003cth\u003ePlatform\u003c/th\u003e\n\u003cth\u003eChecksum\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-aarch64-apple-darwin.tar.xz\"\u003ecargo-insta-aarch64-apple-darwin.tar.xz\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eApple Silicon macOS\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-aarch64-apple-darwin.tar.xz.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-apple-darwin.tar.xz\"\u003ecargo-insta-x86_64-apple-darwin.tar.xz\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eIntel macOS\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-apple-darwin.tar.xz.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-pc-windows-msvc.zip\"\u003ecargo-insta-x86_64-pc-windows-msvc.zip\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ex64 Windows\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-pc-windows-msvc.zip.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-aarch64-unknown-linux-gnu.tar.xz\"\u003ecargo-insta-aarch64-unknown-linux-gnu.tar.xz\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eARM64 Linux\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-aarch64-unknown-linux-gnu.tar.xz.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-unknown-linux-gnu.tar.xz\"\u003ecargo-insta-x86_64-unknown-linux-gnu.tar.xz\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ex64 Linux\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-unknown-linux-gnu.tar.xz.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-unknown-linux-musl.tar.xz\"\u003ecargo-insta-x86_64-unknown-linux-musl.tar.xz\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ex64 MUSL Linux\u003c/td\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/releases/download/1.49.0/cargo-insta-x86_64-unknown-linux-musl.tar.xz.sha256\"\u003echecksum\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cblockquote\u003e\n\u003cp\u003e\u003cem\u003eThis was written by Codex on behalf of \u003ca href=\"https://github.com/max-sixty\"\u003e\u003ccode\u003e@​max-sixty\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/p\u003e\n\u003c/blockquote\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/mitsuhiko/insta/blob/master/CHANGELOG.md\"\u003einsta's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.49.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003eOption\u0026lt;\u0026amp;OsStr\u0026gt;\u003c/code\u003e snapshot names, such as \u003ccode\u003ePath::file_name()\u003c/code\u003e,\nwithout explicit string conversion. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/929\"\u003e#929\u003c/a\u003e (\u003ca href=\"https://github.com/dislogical\"\u003e\u003ccode\u003e@​dislogical\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd prebuilt \u003ccode\u003ecargo-insta\u003c/code\u003e binaries for ARM64 Linux\n(\u003ccode\u003eaarch64-unknown-linux-gnu\u003c/code\u003e). \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/942\"\u003e#942\u003c/a\u003e (\u003ca href=\"https://github.com/aljohri\"\u003e\u003ccode\u003e@​aljohri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON serialization of maps keyed by unit enum variants. Keys use the\nserialized variant name, including serde renames. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/934\"\u003e#934\u003c/a\u003e (\u003ca href=\"https://github.com/teddytennant\"\u003e\u003ccode\u003e@​teddytennant\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove trailing semicolons from serialization macro bodies to avoid\ncompiler warnings when used in expression position. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/940\"\u003e#940\u003c/a\u003e (\u003ca href=\"https://github.com/Tiwalun\"\u003e\u003ccode\u003e@​Tiwalun\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention \u003ccode\u003eINSTA_UPDATE=always\u003c/code\u003e in snapshot mismatch hints for file\nsnapshots. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/927\"\u003e#927\u003c/a\u003e (\u003ca href=\"https://github.com/hiro-nikaitou\"\u003e\u003ccode\u003e@​hiro-nikaitou\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate the lockfile's \u003ccode\u003etempfile\u003c/code\u003e and \u003ccode\u003erustix\u003c/code\u003e dependencies to fix builds\nwith newer Rust toolchains. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/939\"\u003e#939\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecargo insta test --all-targets --test-runner nextest\u003c/code\u003e failing with\n\u0026quot;Can't mix --doc with other target selecting options\u0026quot;. Like \u003ccode\u003ecargo test --all-targets\u003c/code\u003e, it no longer runs doctests. \u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/460\"\u003e#460\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/mitsuhiko/insta/commit/5df39ceafc8a47f82ec9953aaba12072d316adc8\"\u003e\u003ccode\u003e5df39ce\u003c/code\u003e\u003c/a\u003e Release 1.49.0 (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/944\"\u003e#944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/1c28c19e812a0b538ae8f75eb2424e63eb028761\"\u003e\u003ccode\u003e1c28c19\u003c/code\u003e\u003c/a\u003e Skip the separate doctest run for nextest with \u003ccode\u003e--all-targets\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/941\"\u003e#941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/064742e9b7b2f3eaabb4724069e739ddf23d8227\"\u003e\u003ccode\u003e064742e\u003c/code\u003e\u003c/a\u003e Build cargo-insta for aarch64-unknown-linux-gnu (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/942\"\u003e#942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/08b67d940a363501c2c94d7246a2073210e7e03d\"\u003e\u003ccode\u003e08b67d9\u003c/code\u003e\u003c/a\u003e Remove trailing semicolons from macro bodies (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/940\"\u003e#940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/06858e1c92ceef33d90e642cfce6e2fd36fbd1e2\"\u003e\u003ccode\u003e06858e1\u003c/code\u003e\u003c/a\u003e fix: regenerate Cargo.lock to avoid broken rustix 0.37.27 (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/939\"\u003e#939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/70be034869ec431519919d60102c2e65e7b54bae\"\u003e\u003ccode\u003e70be034\u003c/code\u003e\u003c/a\u003e Serialize unit enum variants used as JSON map keys (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/934\"\u003e#934\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/54d0b9691c3a951c0f82e1d6fa8ebe6a7130804d\"\u003e\u003ccode\u003e54d0b96\u003c/code\u003e\u003c/a\u003e feat: implement From for SnapshotValue with OsStr (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/929\"\u003e#929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/3d62572f910cd19eba45673b37ad91293d82b689\"\u003e\u003ccode\u003e3d62572\u003c/code\u003e\u003c/a\u003e [fix] Mention INSTA_UPDATE variable in snapshot mismatch errors (\u003ca href=\"https://redirect.github.com/mitsuhiko/insta/issues/927\"\u003e#927\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitsuhiko/insta/commit/1712876439ad9ba9f5d32aff3deedcc909dd8917\"\u003e\u003ccode\u003e1712876\u003c/code\u003e\u003c/a\u003e ci: run CI on a pinned toolchain via rust-toolchain.toml; fix format-arg lint...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/mitsuhiko/insta/compare/1.48.0...1.49.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi` from 3.13.0 to 3.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-v3.14.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(napi)\u003c/em\u003e lock the allocator on threaded WASI and never hang after a worker crash (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3552\"\u003e#3552\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-v3.13.0...napi-v3.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-derive` from 3.6.9 to 3.6.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-derive's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-derive-v3.6.10\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate Cargo.toml dependencies\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-derive-v3.6.9...napi-derive-v3.6.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-build` from 2.5.0 to 2.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-build's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-build-v2.6.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(async-runtime)\u003c/em\u003e offer the MultiThread flavor on wasm32-wasip1-threads (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3541\"\u003e#3541\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/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-build-v2.5.0...napi-build-v2.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/everruns/bashkit/pull/2522","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/everruns%2Fbashkit/issues/2522","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2522/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-06T08:54:19.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5725698195","node_id":"PR_kwDOTEV0gs8AAAABG4GCDQ","number":1907,"state":"open","title":"chore(deps): Bump the cargo-minor-patch group across 1 directory with 8 updates","user":"dependabot[bot]","labels":["rust","dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-06T08:54:19.000Z","updated_at":"2026-10-06T08:58:59.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): Bump","group_name":"cargo-minor-patch","update_count":8,"packages":[{"name":"napi","old_version":"3.13.0","new_version":"3.14.0","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-build","old_version":"2.5.0","new_version":"2.6.0","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-derive","old_version":"3.6.9","new_version":"3.6.10","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"pg_query","old_version":"6.2.0","new_version":"6.2.1","repository_url":"https://github.com/pganalyze/pg_query.rs"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"pyo3-build-config","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"uuid","old_version":"1.26.1","new_version":"1.27.0","repository_url":"https://github.com/uuid-rs/uuid"},{"name":"wat","old_version":"1.259.0","new_version":"1.261.0","repository_url":"https://github.com/bytecodealliance/wasm-tools"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the cargo-minor-patch group with 8 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [napi](https://github.com/napi-rs/napi-rs) | `3.13.0` | `3.14.0` |\n| [napi-build](https://github.com/napi-rs/napi-rs) | `2.5.0` | `2.6.0` |\n| [napi-derive](https://github.com/napi-rs/napi-rs) | `3.6.9` | `3.6.10` |\n| [pg_query](https://github.com/pganalyze/pg_query.rs) | `6.2.0` | `6.2.1` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [pyo3-build-config](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [uuid](https://github.com/uuid-rs/uuid) | `1.26.1` | `1.27.0` |\n| [wat](https://github.com/bytecodealliance/wasm-tools) | `1.259.0` | `1.261.0` |\n\n\nUpdates `napi` from 3.13.0 to 3.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-v3.14.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(napi)\u003c/em\u003e lock the allocator on threaded WASI and never hang after a worker crash (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3552\"\u003e#3552\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-v3.13.0...napi-v3.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-build` from 2.5.0 to 2.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-build's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-build-v2.6.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(async-runtime)\u003c/em\u003e offer the MultiThread flavor on wasm32-wasip1-threads (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3541\"\u003e#3541\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/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-build-v2.5.0...napi-build-v2.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-derive` from 3.6.9 to 3.6.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-derive's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-derive-v3.6.10\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate Cargo.toml dependencies\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-derive-v3.6.9...napi-derive-v3.6.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pg_query` from 6.2.0 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pganalyze/pg_query.rs/blob/main/CHANGELOG.md\"\u003epg_query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1   2026-09-30\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to libpg_query 17-6.2.5\u003c/li\u003e\n\u003cli\u003eSecurity fix: Heap out-of-bounds write and read in pg_query_normalize (\u003ca href=\"https://github.com/pganalyze/libpg_query/security/advisories/GHSA-6ggm-xmc9-8ffg\"\u003eGHSA-6ggm-xmc9-8ffg\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeparser:\n\u003cul\u003e\n\u003cli\u003eAdd strict checking for unexpected pointer values\u003c/li\u003e\n\u003cli\u003ePreserve parentheses around subscripted array constructors\n\u003cul\u003e\n\u003cli\u003eThis prevents \u003ccode\u003e(ARRAY[...])[...]\u003c/code\u003e from being deparsed as invalid SQL\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix handling of constraint key named \u003ccode\u003evalue\u003c/code\u003e in \u003ccode\u003eALTER TABLE\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003epg_query_normalize:\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eNOTIFY\u003c/code\u003e statements\u003c/li\u003e\n\u003cli\u003eAvoid undefined behaviour for overly large parameter references\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pganalyze/pg_query.rs/commit/c780e49d095c7c97def832e45ada3f559d5b42cf\"\u003e\u003ccode\u003ec780e49\u003c/code\u003e\u003c/a\u003e Release 6.2.1 (\u003ca href=\"https://redirect.github.com/pganalyze/pg_query.rs/issues/84\"\u003e#84\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pganalyze/pg_query.rs/commit/288e41028cf5b8380c30a3c860cba87592a241e8\"\u003e\u003ccode\u003e288e410\u003c/code\u003e\u003c/a\u003e Propagate real bindgen error in build.rs (\u003ca href=\"https://redirect.github.com/pganalyze/pg_query.rs/issues/81\"\u003e#81\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/pganalyze/pg_query.rs/compare/v6.2.0...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3-build-config` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3-build-config's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3-build-config's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `uuid` from 1.26.1 to 1.27.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uuid-rs/uuid/releases\"\u003euuid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.27.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAccept case-insensitive urn:uuid: prefixes when parsing by \u003ca href=\"https://github.com/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix ordering of V7 UUIDs created by earlier seconds with later subsec nanos by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/915\"\u003euuid-rs/uuid#915\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.27.0 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/917\"\u003euuid-rs/uuid#917\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/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\"\u003ehttps://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/b62154e8be41ce42127cba08ee5e5cef3e2ea971\"\u003e\u003ccode\u003eb62154e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/917\"\u003e#917\u003c/a\u003e from uuid-rs/cargo/v1.27.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/ffd8ec55f20006fa2b5978cc03a1e671835040e9\"\u003e\u003ccode\u003effd8ec5\u003c/code\u003e\u003c/a\u003e prepare for 1.27.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4b6c10f9dd9cf37809460859ab88071d43703398\"\u003e\u003ccode\u003e4b6c10f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/915\"\u003e#915\u003c/a\u003e from uuid-rs/fix/v7-ordering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a1aa126f97cdc8d9c5c25d56efa0e7bcb9ab0514\"\u003e\u003ccode\u003ea1aa126\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/912\"\u003e#912\u003c/a\u003e from jaideeppyne/fix/urn-prefix-case-insensitive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4639d67b0f117a94cf0add01e4c68e674691b49c\"\u003e\u003ccode\u003e4639d67\u003c/code\u003e\u003c/a\u003e fix ordering of V7 UUIDs created by earlier seconds with later subsec nanos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/272370344a977ee0641ffa4d01b7ad3ca0eda687\"\u003e\u003ccode\u003e2723703\u003c/code\u003e\u003c/a\u003e bump MSRV to 1.89.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a3e64faaf7fdf583260fc18a594b099677855eea\"\u003e\u003ccode\u003ea3e64fa\u003c/code\u003e\u003c/a\u003e refactor: simplify URN prefix parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/5055fd41c7f33c16a1eac3198eac6224ec18b61d\"\u003e\u003ccode\u003e5055fd4\u003c/code\u003e\u003c/a\u003e refactor: inline case-insensitive URN prefix checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/cb8b1d51421df4828c11ebca6b54c5986caafef6\"\u003e\u003ccode\u003ecb8b1d5\u003c/code\u003e\u003c/a\u003e refactor: simplify case-insensitive URN parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/285967db45b800ffda5032d12c32e3d4e2620902\"\u003e\u003ccode\u003e285967d\u003c/code\u003e\u003c/a\u003e Accept case-insensitive urn:uuid: prefixes when parsing\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `wat` from 1.259.0 to 1.261.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/releases\"\u003ewat's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.261.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch to ignoring semver-minor updates by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2710\"\u003ebytecodealliance/wasm-tools#2710\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump actions/setup-node from 4 to 7 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/bytecodealliance/wasm-tools/pull/2712\"\u003ebytecodealliance/wasm-tools#2712\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore semver-patch updates in dependabot by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2716\"\u003ebytecodealliance/wasm-tools#2716\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewit-parser: reject duplicate record fields, flags and cases by \u003ca href=\"https://github.com/youdie006\"\u003e\u003ccode\u003e@​youdie006\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2698\"\u003ebytecodealliance/wasm-tools#2698\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-wave: Upgrade logos to 0.16.1 by \u003ca href=\"https://github.com/lann\"\u003e\u003ccode\u003e@​lann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2718\"\u003ebytecodealliance/wasm-tools#2718\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewit-parser: reject flags with more than 32 members by \u003ca href=\"https://github.com/youdie006\"\u003e\u003ccode\u003e@​youdie006\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2719\"\u003ebytecodealliance/wasm-tools#2719\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix some issues validating custom sections by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2720\"\u003ebytecodealliance/wasm-tools#2720\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix incremental parsing of component \u003ccode\u003estart\u003c/code\u003e section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2722\"\u003ebytecodealliance/wasm-tools#2722\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_var_s33\u003c/code\u003e and handling in component defined types by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2723\"\u003ebytecodealliance/wasm-tools#2723\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject truncated nested modules and components by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2724\"\u003ebytecodealliance/wasm-tools#2724\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix validation of the key types of \u003ccode\u003emap\u003c/code\u003e by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2725\"\u003ebytecodealliance/wasm-tools#2725\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTighten some feature gates in \u003ccode\u003ewasmparser\u003c/code\u003e by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2721\"\u003ebytecodealliance/wasm-tools#2721\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix disallowing borrows in streams/futures/values by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2727\"\u003ebytecodealliance/wasm-tools#2727\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix some custom-descriptors validation of dead code by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2734\"\u003ebytecodealliance/wasm-tools#2734\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit total components/modules in validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2730\"\u003ebytecodealliance/wasm-tools#2730\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix validation of tags in components by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2741\"\u003ebytecodealliance/wasm-tools#2741\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease wasm-tools 1.261.0 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2738\"\u003ebytecodealliance/wasm-tools#2738\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix incorrect async callback validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2742\"\u003ebytecodealliance/wasm-tools#2742\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/compare/v1.260.0...v1.261.0\"\u003ehttps://github.com/bytecodealliance/wasm-tools/compare/v1.260.0...v1.261.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.260.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eperf: optimize \u003ccode\u003eOperatorsReader::skip_const_expr\u003c/code\u003e by \u003ca href=\"https://github.com/dishmaker\"\u003e\u003ccode\u003e@​dishmaker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2653\"\u003ebytecodealliance/wasm-tools#2653\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrint params/results of imports by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2654\"\u003ebytecodealliance/wasm-tools#2654\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-mutate: add global mutator by \u003ca href=\"https://github.com/GtechGovind\"\u003e\u003ccode\u003e@​GtechGovind\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2641\"\u003ebytecodealliance/wasm-tools#2641\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-encoder: add \u003ccode\u003eComponentBuilder::start()\u003c/code\u003e by \u003ca href=\"https://github.com/zacharywhitley\"\u003e\u003ccode\u003e@​zacharywhitley\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2657\"\u003ebytecodealliance/wasm-tools#2657\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: validate linker intrinsic function signatures by \u003ca href=\"https://github.com/RanaPriyansh\"\u003e\u003ccode\u003e@​RanaPriyansh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2646\"\u003ebytecodealliance/wasm-tools#2646\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix handling of names of fields in the text format by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2651\"\u003ebytecodealliance/wasm-tools#2651\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't emit a second \u003ccode\u003ename\u003c/code\u003e section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2659\"\u003ebytecodealliance/wasm-tools#2659\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate extended-name-section proposal implementation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2658\"\u003ebytecodealliance/wasm-tools#2658\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplement canonical interface names in wit-component by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2622\"\u003ebytecodealliance/wasm-tools#2622\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-mutate: add export mutator by \u003ca href=\"https://github.com/GtechGovind\"\u003e\u003ccode\u003e@​GtechGovind\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2639\"\u003ebytecodealliance/wasm-tools#2639\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasmparser: Increase \u003ccode\u003eMAX_WASM_INSTANCES\u003c/code\u003e to \u003ccode\u003e4_096\u003c/code\u003e by \u003ca href=\"https://github.com/noobHappylife\"\u003e\u003ccode\u003e@​noobHappylife\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2661\"\u003ebytecodealliance/wasm-tools#2661\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-encoder: add ComponentBuilder::instantiate_exports by \u003ca href=\"https://github.com/zacharywhitley\"\u003e\u003ccode\u003e@​zacharywhitley\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2655\"\u003ebytecodealliance/wasm-tools#2655\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTry out dependabot on this repo by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2662\"\u003ebytecodealliance/wasm-tools#2662\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix parsing empty compact import encoding groups by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2664\"\u003ebytecodealliance/wasm-tools#2664\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix an invalid mutation with a tag section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2665\"\u003ebytecodealliance/wasm-tools#2665\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport multiple supertypes in everything but validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2652\"\u003ebytecodealliance/wasm-tools#2652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate spec test suite submodule by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2667\"\u003ebytecodealliance/wasm-tools#2667\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplement validation of custom sections by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2668\"\u003ebytecodealliance/wasm-tools#2668\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove unused dependencies from workspace by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2669\"\u003ebytecodealliance/wasm-tools#2669\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add \u003ccode\u003e{stream,future}.forward\u003c/code\u003e canon builtins by \u003ca href=\"https://github.com/rvolosatovs\"\u003e\u003ccode\u003e@​rvolosatovs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2614\"\u003ebytecodealliance/wasm-tools#2614\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ewasm-tools component new\u003c/code\u003e for page-size-1 memory by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2666\"\u003ebytecodealliance/wasm-tools#2666\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd getter and setter support by \u003ca href=\"https://github.com/bvisness\"\u003e\u003ccode\u003e@​bvisness\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2660\"\u003ebytecodealliance/wasm-tools#2660\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRename seq_cst/acq_rel in the text format by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2673\"\u003ebytecodealliance/wasm-tools#2673\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(canonical-names): disallow encoding multiple exports with the same name by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2672\"\u003ebytecodealliance/wasm-tools#2672\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/bytecodealliance/wasm-tools/commit/5793351e3190a178d0dbdd509d183b6da896090a\"\u003e\u003ccode\u003e5793351\u003c/code\u003e\u003c/a\u003e Release wasm-tools 1.261.0 (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2738\"\u003e#2738\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/de1811cf001af4deb0a15288435340bbb4c711fa\"\u003e\u003ccode\u003ede1811c\u003c/code\u003e\u003c/a\u003e fix incorrect async callback validation (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2742\"\u003e#2742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/45eb6b6481b7699a42d4f901593b73e3155194fc\"\u003e\u003ccode\u003e45eb6b6\u003c/code\u003e\u003c/a\u003e Fix validation of tags in components (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2741\"\u003e#2741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/ade02824ce01545c0b2a48451e7b362f3f7074e7\"\u003e\u003ccode\u003eade0282\u003c/code\u003e\u003c/a\u003e Limit total components/modules in validation (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2730\"\u003e#2730\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d129fe42f9764d35c3a9d5dacac1f6fd1d3f1ea2\"\u003e\u003ccode\u003ed129fe4\u003c/code\u003e\u003c/a\u003e Fix disallowing borrows in streams/futures/values (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2727\"\u003e#2727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d4903a18e540cf1cc747a8e3a2aebcac7ad602f5\"\u003e\u003ccode\u003ed4903a1\u003c/code\u003e\u003c/a\u003e Tighten some feature gates in \u003ccode\u003ewasmparser\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2721\"\u003e#2721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/7385c089cecb0f6a2fe9f95d6a302cf0100bcfc1\"\u003e\u003ccode\u003e7385c08\u003c/code\u003e\u003c/a\u003e Fix some custom-descriptors validation of dead code (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2734\"\u003e#2734\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/65d480abad54094ab39242fa5f35ee2c54f87f10\"\u003e\u003ccode\u003e65d480a\u003c/code\u003e\u003c/a\u003e Fix validation of the key types of \u003ccode\u003emap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2725\"\u003e#2725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d2d492d4793143bd2cc651f4e9a150c6cb8ce197\"\u003e\u003ccode\u003ed2d492d\u003c/code\u003e\u003c/a\u003e Reject truncated nested modules and components (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2724\"\u003e#2724\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/ccacc243a0047c2c4d34c17559a76a446f4fdc83\"\u003e\u003ccode\u003eccacc24\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eread_var_s33\u003c/code\u003e and handling in component defined types (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2723\"\u003e#2723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/compare/v1.259.0...v1.261.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/registrystack/registry-stack/pull/1907","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/registrystack%2Fregistry-stack/issues/1907","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1907/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-06T05:55:17.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5723678210","node_id":"PR_kwDOCGC1nM8AAAABG2e3cw","number":89,"state":"open","title":"Bump the cargo group across 1 directory with 9 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-06T05:55:17.000Z","updated_at":"2026-10-06T05:55:22.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"cargo","update_count":9,"packages":[{"name":"indexmap","old_version":"2.14.0","new_version":"2.14.2","repository_url":"https://github.com/indexmap-rs/indexmap"},{"name":"num-bigint","old_version":"0.4.6","new_version":"0.5.1","repository_url":"https://github.com/rust-num/num-bigint"},{"name":"smallvec","old_version":"1.15.2","new_version":"1.16.2","repository_url":"https://github.com/servo/rust-smallvec"},{"name":"thiserror","old_version":"2.0.20","new_version":"2.0.21","repository_url":"https://github.com/dtolnay/thiserror"},{"name":"rand","old_version":"0.10.2","new_version":"0.10.3","repository_url":"https://github.com/rust-random/rand"},{"name":"uuid","old_version":"1.24.1","new_version":"1.27.0","repository_url":"https://github.com/uuid-rs/uuid"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"clap","old_version":"4.6.6","new_version":"4.6.7","repository_url":"https://github.com/clap-rs/clap"},{"name":"lazy_static","old_version":"1.5.0","new_version":"1.5.1","repository_url":"https://github.com/rust-lang-nursery/lazy-static.rs"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the cargo group with 9 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [indexmap](https://github.com/indexmap-rs/indexmap) | `2.14.0` | `2.14.2` |\n| [num-bigint](https://github.com/rust-num/num-bigint) | `0.4.6` | `0.5.1` |\n| [smallvec](https://github.com/servo/rust-smallvec) | `1.15.2` | `1.16.2` |\n| [thiserror](https://github.com/dtolnay/thiserror) | `2.0.20` | `2.0.21` |\n| [rand](https://github.com/rust-random/rand) | `0.10.2` | `0.10.3` |\n| [uuid](https://github.com/uuid-rs/uuid) | `1.24.1` | `1.27.0` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [clap](https://github.com/clap-rs/clap) | `4.6.6` | `4.6.7` |\n| [lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs) | `1.5.0` | `1.5.1` |\n\n\nUpdates `indexmap` from 2.14.0 to 2.14.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/indexmap-rs/indexmap/blob/main/RELEASES.md\"\u003eindexmap's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.14.2 (2026-09-04)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix item hygiene in map and set macros. Previously, an internal \u003ccode\u003econst CAP\u003c/code\u003e\ncould shadow the same name in the caller's namespace.\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003econst\u003c/code\u003e initialization of empty \u003ccode\u003eindexmap_with_default!\u003c/code\u003e and\n\u003ccode\u003eindexset_with_default!\u003c/code\u003e. The hasher may also be omitted if it's inferrable.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.14.1 (2026-08-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify comparisons where \u003ccode\u003eEquivalent\u003c/code\u003e isn't needed (\u003ccode\u003eQ = K\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eUnify index assertions for bounds checks.\u003c/li\u003e\n\u003cli\u003eFix (or \u003ccode\u003eexpect\u003c/code\u003e) clippy lints.\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/indexmap-rs/indexmap/commit/41a870887c4c77adf665886e63df08f406bfe37a\"\u003e\u003ccode\u003e41a8708\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/indexmap-rs/indexmap/issues/450\"\u003e#450\u003c/a\u003e from cuviper/macros\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/0fb7b5c813c94dcb16f220d249e42a7b9e4ea44d\"\u003e\u003ccode\u003e0fb7b5c\u003c/code\u003e\u003c/a\u003e Release 2.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/55e6b28278f242b4d4190a14b6e86c09580dd75a\"\u003e\u003ccode\u003e55e6b28\u003c/code\u003e\u003c/a\u003e Improve the empty macro cases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/c067355e1ca5ec39348f42dcee582d4f222c3295\"\u003e\u003ccode\u003ec067355\u003c/code\u003e\u003c/a\u003e Fix item hygiene in user macros\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/fdf7e1738b3b53869bdc15d666f9b81961041825\"\u003e\u003ccode\u003efdf7e17\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/indexmap-rs/indexmap/issues/449\"\u003e#449\u003c/a\u003e from cuviper/release-2.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/ada540e17cc7d8f38359f7d83c225e38f367c86b\"\u003e\u003ccode\u003eada540e\u003c/code\u003e\u003c/a\u003e Release 2.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/af93b43ecd62d28deb59a6ac23f98bd115475eaf\"\u003e\u003ccode\u003eaf93b43\u003c/code\u003e\u003c/a\u003e expect clippy::redundant_slicing in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/c95da18c97d2742fe8731f36e81c1d04f0620c6a\"\u003e\u003ccode\u003ec95da18\u003c/code\u003e\u003c/a\u003e fix clippy::derivable_impls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/21963654e41f86f396a2ba6d9582ccd8eb7df52c\"\u003e\u003ccode\u003e2196365\u003c/code\u003e\u003c/a\u003e fix clippy::useless_vec (and more) in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/indexmap-rs/indexmap/commit/1c2be7b00c5bb61f654210355d1e9f0d9be03956\"\u003e\u003ccode\u003e1c2be7b\u003c/code\u003e\u003c/a\u003e use inherent usize::MAX\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/indexmap-rs/indexmap/compare/2.14.0...2.14.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `num-bigint` from 0.4.6 to 0.5.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-num/num-bigint/blob/main/RELEASES.md\"\u003enum-bigint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease 0.5.1 (2026-07-04)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/348\"\u003eFixed a regression in the B-Z division algorithm.\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eContributors\u003c/strong\u003e: \u003ca href=\"https://github.com/cuviper\"\u003e\u003ccode\u003e@​cuviper\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003eRelease 0.5.0 (2026-07-02)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/338\"\u003eUpgrade to \u003ccode\u003erand\u003c/code\u003e v0.10 and/or v0.9, and split \u003ccode\u003erand_core\u003c/code\u003e\u003c/a\u003e.\n\u003cul\u003e\n\u003cli\u003eThe former \u003ccode\u003erand\u003c/code\u003e feature is now split into multiple features, \u003ccode\u003erand_0_9\u003c/code\u003e,\n\u003ccode\u003erand_core_0_9\u003c/code\u003e, \u003ccode\u003erand_0_10\u003c/code\u003e, and \u003ccode\u003erand_core_0_10\u003c/code\u003e, depending on the\nversion and feature set you need.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003eRandBigInt\u003c/code\u003e extension trait is now split into \u003ccode\u003eBigRng09\u003c/code\u003e and\n\u003ccode\u003eBigRng010\u003c/code\u003e for each version.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003egen_*\u003c/code\u003e methods are deprecated in favor of new \u003ccode\u003erandom_*\u003c/code\u003e methods.\u003c/li\u003e\n\u003cli\u003eThis is also a \u003ca href=\"https://rust-random.github.io/book/crate-reprod.html#api-breaking-value-breaking-and-semver\"\u003evalue-breaking\u003c/a\u003e release, as \u003ccode\u003erand\u003c/code\u003e defines it.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eContributors\u003c/strong\u003e: \u003ca href=\"https://github.com/bionicles\"\u003e\u003ccode\u003e@​bionicles\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cuviper\"\u003e\u003ccode\u003e@​cuviper\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/divergentdave\"\u003e\u003ccode\u003e@​divergentdave\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003eRelease 0.4.8 (2026-07-04)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/349\"\u003eFixed a regression in the B-Z division algorithm.\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eContributors\u003c/strong\u003e: \u003ca href=\"https://github.com/cuviper\"\u003e\u003ccode\u003e@​cuviper\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003eRelease 0.4.7 (2026-07-02)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/307\"\u003eInline single-digit values.\u003c/a\u003e This reduces heap allocations, and\nalso enables \u003ccode\u003econst ONE\u003c/code\u003e, \u003ccode\u003econst NEG_ONE\u003c/code\u003e, and \u003ccode\u003econst fn new_const\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/316\"\u003eUse divide and conquer in \u003ccode\u003eto_radix_digits\u003c/code\u003e,\u003c/a\u003e also implementing\nthe Burnikel-Ziegler algorithm to speed up large divisions in general.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-num/num-bigint/pull/330\"\u003eImplement \u003ccode\u003eLowerBounded\u003c/code\u003e for \u003ccode\u003eBigUint\u003c/code\u003e.\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eContributors\u003c/strong\u003e: \u003ca href=\"https://github.com/cp289\"\u003e\u003ccode\u003e@​cp289\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cuviper\"\u003e\u003ccode\u003e@​cuviper\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/hkalbasi\"\u003e\u003ccode\u003e@​hkalbasi\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mikem8891\"\u003e\u003ccode\u003e@​mikem8891\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/pRizz\"\u003e\u003ccode\u003e@​pRizz\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/tyilo\"\u003e\u003ccode\u003e@​tyilo\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/xtqqczze\"\u003e\u003ccode\u003e@​xtqqczze\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/33c59ba44b7bdb09975b38a321b1b88c6a444005\"\u003e\u003ccode\u003e33c59ba\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-num/num-bigint/issues/348\"\u003e#348\u003c/a\u003e from cuviper/bz-alg2-step3b\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/38b68f66f4ac0f6b611edb984d05d0104cad5c67\"\u003e\u003ccode\u003e38b68f6\u003c/code\u003e\u003c/a\u003e Release 0.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/f4a43f56eb38f6b2ea52b21b47e5392920fe158b\"\u003e\u003ccode\u003ef4a43f5\u003c/code\u003e\u003c/a\u003e Fix the missing part of the Burnikel-Ziegler algorithm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/ebfd89a0ef7b3616e19c5cba11a0469109488594\"\u003e\u003ccode\u003eebfd89a\u003c/code\u003e\u003c/a\u003e Add failing tests for a bug in B-Z division\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/0ab95df78c44aeb9036b3b4f06ff39a740230924\"\u003e\u003ccode\u003e0ab95df\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-num/num-bigint/issues/338\"\u003e#338\u003c/a\u003e from cuviper/rand-0.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/33d6998b40cad9787e2179ddfecf8eab655d759d\"\u003e\u003ccode\u003e33d6998\u003c/code\u003e\u003c/a\u003e Release 0.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/84d05b791d0b748b5bac9c7766109853949e5034\"\u003e\u003ccode\u003e84d05b7\u003c/code\u003e\u003c/a\u003e Clean up manifests of ci crates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/f8daf564cd3d0888c3aeca6e4a0e63cb3c69a83d\"\u003e\u003ccode\u003ef8daf56\u003c/code\u003e\u003c/a\u003e Allow \u003ccode\u003eclippy::duplicate_mod\u003c/code\u003e where intended\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/022310ab277684b9e7fe586304d0dfaa11cb73fe\"\u003e\u003ccode\u003e022310a\u003c/code\u003e\u003c/a\u003e Rearrange the \u003ccode\u003erand\u003c/code\u003e features to support both 0.9 and 0.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-num/num-bigint/commit/537a0362554ae00a97dbe4af58770dfcd0e0a1ca\"\u003e\u003ccode\u003e537a036\u003c/code\u003e\u003c/a\u003e ci: use the fallback resolver for deps\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-num/num-bigint/compare/num-bigint-0.4.6...num-bigint-0.5.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `smallvec` from 1.15.2 to 1.16.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/servo/rust-smallvec/releases\"\u003esmallvec's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.16.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v2’s retain implementation to v1 by \u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/596\"\u003eservo/rust-smallvec#596\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix element ownership tracking with may_dangle by \u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/594\"\u003eservo/rust-smallvec#594\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Cargo manual_readme warning by \u003ca href=\"https://github.com/Rayan-and-beyond\"\u003e\u003ccode\u003e@​Rayan-and-beyond\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/608\"\u003eservo/rust-smallvec#608\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump version by \u003ca href=\"https://github.com/alejandro-vaz\"\u003e\u003ccode\u003e@​alejandro-vaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/617\"\u003eservo/rust-smallvec#617\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/Rayan-and-beyond\"\u003e\u003ccode\u003e@​Rayan-and-beyond\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/608\"\u003eservo/rust-smallvec#608\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/servo/rust-smallvec/compare/v1.16.1...v1.16.2\"\u003ehttps://github.com/servo/rust-smallvec/compare/v1.16.1...v1.16.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.16.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up push by expanding triple_mut by \u003ca href=\"https://github.com/bolshoytoster\"\u003e\u003ccode\u003e@​bolshoytoster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/557\"\u003eservo/rust-smallvec#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump version to 1.16.1 by \u003ca href=\"https://github.com/ryux1\"\u003e\u003ccode\u003e@​ryux1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/585\"\u003eservo/rust-smallvec#585\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: doc warning by \u003ca href=\"https://github.com/alejandro-vaz\"\u003e\u003ccode\u003e@​alejandro-vaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/582\"\u003eservo/rust-smallvec#582\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: cargo warnings by \u003ca href=\"https://github.com/alejandro-vaz\"\u003e\u003ccode\u003e@​alejandro-vaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/581\"\u003eservo/rust-smallvec#581\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/ryux1\"\u003e\u003ccode\u003e@​ryux1\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/585\"\u003eservo/rust-smallvec#585\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/servo/rust-smallvec/compare/v1.16.0...v1.16.1\"\u003ehttps://github.com/servo/rust-smallvec/compare/v1.16.0...v1.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.16.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eInclude debug_metadata/*.natvis in the published crate to fix debugger_visualizer/docs.rs build by \u003ca href=\"https://github.com/teddytennant\"\u003e\u003ccode\u003e@​teddytennant\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/417\"\u003eservo/rust-smallvec#417\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: removed debugger visualizer + tests by \u003ca href=\"https://github.com/alejandro-vaz\"\u003e\u003ccode\u003e@​alejandro-vaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/420\"\u003eservo/rust-smallvec#420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: added style check to CI \u0026amp;\u0026amp; rustfmt.toml by \u003ca href=\"https://github.com/alejandro-vaz\"\u003e\u003ccode\u003e@​alejandro-vaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/436\"\u003eservo/rust-smallvec#436\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/teddytennant\"\u003e\u003ccode\u003e@​teddytennant\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/pull/417\"\u003eservo/rust-smallvec#417\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/servo/rust-smallvec/compare/v1.15.2...v1.16.0\"\u003ehttps://github.com/servo/rust-smallvec/compare/v1.15.2...v1.16.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/ccf5fc71044d491c46a3d79e7ed53948e6da1590\"\u003e\u003ccode\u003eccf5fc7\u003c/code\u003e\u003c/a\u003e chore: bump version (\u003ca href=\"https://redirect.github.com/servo/rust-smallvec/issues/617\"\u003e#617\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/af207ccb68496e112f3d7366a66c07c6107ef04a\"\u003e\u003ccode\u003eaf207cc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/issues/608\"\u003e#608\u003c/a\u003e from Rayan-and-beyond/fix/manual-readme-warning-606\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/cda4b73506acb35823a8147ef4397375f7063b82\"\u003e\u003ccode\u003ecda4b73\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/issues/594\"\u003e#594\u003c/a\u003e from astral-sh/charlie/codex-fix-may-dangle\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/d0556cb8e33b02b434074896f753f5f03b20c278\"\u003e\u003ccode\u003ed0556cb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/servo/rust-smallvec/issues/596\"\u003e#596\u003c/a\u003e from astral-sh/charlie/codex-v1-compact\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/f73914cf4b523741b9af5d13a98e77d59c54bc13\"\u003e\u003ccode\u003ef73914c\u003c/code\u003e\u003c/a\u003e Flatten retain tests into the unit test module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/954d599e41b074282857e97c44211f0f797e6597\"\u003e\u003ccode\u003e954d599\u003c/code\u003e\u003c/a\u003e Move retain tests into the unit test module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/8d936338dbcefa380b4dd596379b57582ed5d616\"\u003e\u003ccode\u003e8d93633\u003c/code\u003e\u003c/a\u003e Remove added retain benchmark harness\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/88c6bfabd610f34f4f1f9d530f58fb8a74b9a807\"\u003e\u003ccode\u003e88c6bfa\u003c/code\u003e\u003c/a\u003e Limit compaction optimization to retain\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/b9ef17da33c19cb1d11190e0c7c29e459297cd6a\"\u003e\u003ccode\u003eb9ef17d\u003c/code\u003e\u003c/a\u003e Fix element ownership tracking with may_dangle\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/servo/rust-smallvec/commit/42029c27c9243d8a178a0d64464185547b3a7d6f\"\u003e\u003ccode\u003e42029c2\u003c/code\u003e\u003c/a\u003e Compact retained elements directly in retain and dedup_by\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/servo/rust-smallvec/compare/v1.15.2...v1.16.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `thiserror` from 2.0.20 to 2.0.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/thiserror/releases\"\u003ethiserror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix parsing of generic unit variants in display expressions (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\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/dtolnay/thiserror/commit/b1827ee06f81a7d7f954e676771e19a97f9f8e3b\"\u003e\u003ccode\u003eb1827ee\u003c/code\u003e\u003c/a\u003e Release 2.0.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/58037b575a2a5543d0d54a49360554325b49f55a\"\u003e\u003ccode\u003e58037b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e from dtolnay/turbofish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/f82a0cf8f06c71263c2caa26e759f337d2778153\"\u003e\u003ccode\u003ef82a0cf\u003c/code\u003e\u003c/a\u003e Keep track of nested turbofish depth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72ea49262d6412ccbc08f1696dda8626409e657d\"\u003e\u003ccode\u003e72ea492\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72eea0d4ddb17ff9fa873aa74469de850021b22e\"\u003e\u003ccode\u003e72eea0d\u003c/code\u003e\u003c/a\u003e Resolve io_other_error clippy lint in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/07f09a2ec934df58508ce4fa5e7fbf27cca552c2\"\u003e\u003ccode\u003e07f09a2\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.74\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/2715388e8cc5787b3643251f7a7a637e89376688\"\u003e\u003ccode\u003e2715388\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/5a306c7d0a8588caaaaa6a7567aeb25c1c10719b\"\u003e\u003ccode\u003e5a306c7\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/ef9383b37d7c96b01e10df35d3e9e313c7b98b5a\"\u003e\u003ccode\u003eef9383b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-08-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/8336b8407fbfe69177c504cdbc379db20cf6f131\"\u003e\u003ccode\u003e8336b84\u003c/code\u003e\u003c/a\u003e Update ui tests for version 2.0.20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dtolnay/thiserror/compare/2.0.20...2.0.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rand` from 0.10.2 to 0.10.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-random/rand/blob/master/CHANGELOG.md\"\u003erand's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.10.3] — 2026-09-20\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eWeightedIndex\u003c/code\u003e panic when the sum of float weights is infinite; return \u003ccode\u003eError::Overflow\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1808\"\u003e#1808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix spurious \u003ccode\u003eError::NonFinite\u003c/code\u003e from \u003ccode\u003eUniform::new_inclusive\u003c/code\u003e on large finite float ranges such as \u003ccode\u003e0.0..=f64::MAX\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible panic due to sampling a deserialized \u003ccode\u003eUniform\u0026lt;char\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReport exact remaining lengths from \u003ccode\u003eWeightedIndex::weights()\u003c/code\u003e and reduce overhead when reading weights (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1808\"\u003e#1808\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1808\"\u003erust-random/rand#1808\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1821\"\u003erust-random/rand#1821\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1831\"\u003erust-random/rand#1831\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1838\"\u003erust-random/rand#1838\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/9e7d328f60d6372ae22927f37d1a816fc980f25e\"\u003e\u003ccode\u003e9e7d328\u003c/code\u003e\u003c/a\u003e Prepare rand 0.10.3 (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1840\"\u003e#1840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/f73ce74d4ac8f47259e871e22939c6c52e17befe\"\u003e\u003ccode\u003ef73ce74\u003c/code\u003e\u003c/a\u003e Optimize WeightedIndex weight lookup and iteration (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/ef9e044b6b1f5fe541516d4b622c9c2d9932d789\"\u003e\u003ccode\u003eef9e044\u003c/code\u003e\u003c/a\u003e Avoid panic from deserialized \u003ccode\u003eUniform\\\u0026lt;char\u0026gt;\u003c/code\u003e where \u003ccode\u003erange == 0\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/c994eb1e40ab8cc9a929cfe11b345f7296bca393\"\u003e\u003ccode\u003ec994eb1\u003c/code\u003e\u003c/a\u003e docs: fix angle unit in quick start example (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1839\"\u003e#1839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/33dea4fcd044c3425fd8f35ffc9d203c652c3d73\"\u003e\u003ccode\u003e33dea4f\u003c/code\u003e\u003c/a\u003e Test that WeightedIndex rejects INFINITY with Error::Overflow (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1822\"\u003e#1822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/94c9078267aa9ea4e9ad61bd552b35245c995830\"\u003e\u003ccode\u003e94c9078\u003c/code\u003e\u003c/a\u003e Fix Uniform::new_inclusive overflow on large finite float ranges (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/bb1262f703ca04e4ce56be78e1dc4e204cd6a998\"\u003e\u003ccode\u003ebb1262f\u003c/code\u003e\u003c/a\u003e Use Xoshiro256PlusPlus in examples/rayon-monte-carlo.rs (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1805\"\u003e#1805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/521fab6a1bcf349760d2581c2143fbc1aafe8798\"\u003e\u003ccode\u003e521fab6\u003c/code\u003e\u003c/a\u003e Stop pinning dependencies (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1820\"\u003e#1820\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/3f7c4335fd6ba118aaed1ab59b1964808a955d4d\"\u003e\u003ccode\u003e3f7c433\u003c/code\u003e\u003c/a\u003e Stop pinning dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/cf4f73e3953ffcf97f575317a07f0fd5983bfe9e\"\u003e\u003ccode\u003ecf4f73e\u003c/code\u003e\u003c/a\u003e sample_efraimidis_spirakis: error on more than amount non-finite weights (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1814\"\u003e#1814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-random/rand/compare/0.10.2...0.10.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `uuid` from 1.24.1 to 1.27.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uuid-rs/uuid/releases\"\u003euuid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.27.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAccept case-insensitive urn:uuid: prefixes when parsing by \u003ca href=\"https://github.com/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix ordering of V7 UUIDs created by earlier seconds with later subsec nanos by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/915\"\u003euuid-rs/uuid#915\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.27.0 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/917\"\u003euuid-rs/uuid#917\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/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\"\u003ehttps://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.26.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSeat the v7 counter below the version nibble by \u003ca href=\"https://github.com/lenamonj\"\u003e\u003ccode\u003e@​lenamonj\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/907\"\u003euuid-rs/uuid#907\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't panic in overflowing Timestamp to SystemTime conversion by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/909\"\u003euuid-rs/uuid#909\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.26.1 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/910\"\u003euuid-rs/uuid#910\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/lenamonj\"\u003e\u003ccode\u003e@​lenamonj\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/907\"\u003euuid-rs/uuid#907\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.0...v1.26.1\"\u003ehttps://github.com/uuid-rs/uuid/compare/v1.26.0...v1.26.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.26.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ContextV7::with_additional_precision_bits by \u003ca href=\"https://github.com/ChrisJr404\"\u003e\u003ccode\u003e@​ChrisJr404\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/904\"\u003euuid-rs/uuid#904\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.26.0 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/905\"\u003euuid-rs/uuid#905\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/1.25.0...v1.26.0\"\u003ehttps://github.com/uuid-rs/uuid/compare/1.25.0...v1.26.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.25.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a serde::bytes module that encodes a Uuid as a byte string by \u003ca href=\"https://github.com/ChrisJr404\"\u003e\u003ccode\u003e@​ChrisJr404\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/902\"\u003euuid-rs/uuid#902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.25.0 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/903\"\u003euuid-rs/uuid#903\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/ChrisJr404\"\u003e\u003ccode\u003e@​ChrisJr404\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/902\"\u003euuid-rs/uuid#902\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.24.1...1.25.0\"\u003ehttps://github.com/uuid-rs/uuid/compare/v1.24.1...1.25.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/b62154e8be41ce42127cba08ee5e5cef3e2ea971\"\u003e\u003ccode\u003eb62154e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/917\"\u003e#917\u003c/a\u003e from uuid-rs/cargo/v1.27.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/ffd8ec55f20006fa2b5978cc03a1e671835040e9\"\u003e\u003ccode\u003effd8ec5\u003c/code\u003e\u003c/a\u003e prepare for 1.27.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4b6c10f9dd9cf37809460859ab88071d43703398\"\u003e\u003ccode\u003e4b6c10f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/915\"\u003e#915\u003c/a\u003e from uuid-rs/fix/v7-ordering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a1aa126f97cdc8d9c5c25d56efa0e7bcb9ab0514\"\u003e\u003ccode\u003ea1aa126\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/912\"\u003e#912\u003c/a\u003e from jaideeppyne/fix/urn-prefix-case-insensitive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4639d67b0f117a94cf0add01e4c68e674691b49c\"\u003e\u003ccode\u003e4639d67\u003c/code\u003e\u003c/a\u003e fix ordering of V7 UUIDs created by earlier seconds with later subsec nanos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/272370344a977ee0641ffa4d01b7ad3ca0eda687\"\u003e\u003ccode\u003e2723703\u003c/code\u003e\u003c/a\u003e bump MSRV to 1.89.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a3e64faaf7fdf583260fc18a594b099677855eea\"\u003e\u003ccode\u003ea3e64fa\u003c/code\u003e\u003c/a\u003e refactor: simplify URN prefix parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/5055fd41c7f33c16a1eac3198eac6224ec18b61d\"\u003e\u003ccode\u003e5055fd4\u003c/code\u003e\u003c/a\u003e refactor: inline case-insensitive URN prefix checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/cb8b1d51421df4828c11ebca6b54c5986caafef6\"\u003e\u003ccode\u003ecb8b1d5\u003c/code\u003e\u003c/a\u003e refactor: simplify case-insensitive URN parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/285967db45b800ffda5032d12c32e3d4e2620902\"\u003e\u003ccode\u003e285967d\u003c/code\u003e\u003c/a\u003e Accept case-insensitive urn:uuid: prefixes when parsing\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.24.1...v1.27.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `clap` from 4.6.6 to 4.6.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/clap-rs/clap/releases\"\u003eclap's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.6.7\u003c/h2\u003e\n\u003ch2\u003e[4.6.7] - 2026-09-14\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Add \u003ccode\u003e#[command(defer = \u0026lt;bool\u0026gt;)]\u003c/code\u003e attribute to opt-in to lazy initialisation of subcommands\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/clap-rs/clap/blob/main/CHANGELOG.md\"\u003eclap's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.6.7] - 2026-09-14\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Add \u003ccode\u003e#[command(defer = \u0026lt;bool\u0026gt;)]\u003c/code\u003e attribute to opt-in to lazy initialisation of subcommands\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/clap-rs/clap/commit/d3e59a9ab214910b9dad02921b7ef42c6400de9b\"\u003e\u003ccode\u003ed3e59a9\u003c/code\u003e\u003c/a\u003e chore: Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/d997f878c484e02b2935d32a7b67afe990e91227\"\u003e\u003ccode\u003ed997f87\u003c/code\u003e\u003c/a\u003e docs: Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/fb6058cc38cf6f4b07b8db89c850fc80e059e222\"\u003e\u003ccode\u003efb6058c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6409\"\u003e#6409\u003c/a\u003e from heaths/pwsh-support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/2310870f7a9fe4c39f5bb5620261a06ac9aaa0b1\"\u003e\u003ccode\u003e2310870\u003c/code\u003e\u003c/a\u003e test(complete): Add tests for completer_for_path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/5967c17393a09f90112cdc5b2c20a1383f0bd8e4\"\u003e\u003ccode\u003e5967c17\u003c/code\u003e\u003c/a\u003e refactor(complete): Move shell detection to Shells\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/594602bb29f374e49da5029df63e5c740c723ad0\"\u003e\u003ccode\u003e594602b\u003c/code\u003e\u003c/a\u003e fix(complete): Detect pwsh for PowerShell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/3a4f2d031b5110aaaac40f1cb1d6c0b8ff619df8\"\u003e\u003ccode\u003e3a4f2d0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6427\"\u003e#6427\u003c/a\u003e from clap-rs/renovate/shlex-2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/67ebaed4ac95a83d5d7cc22d64ee0fc162ae1db3\"\u003e\u003ccode\u003e67ebaed\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6426\"\u003e#6426\u003c/a\u003e from clap-rs/renovate/actions-checkout-7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/c968b136d0e6f560c08b06a844a20f2798a00096\"\u003e\u003ccode\u003ec968b13\u003c/code\u003e\u003c/a\u003e chore(deps): Update Rust crate shlex to v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/8f247cbf58c582a755ee4dbe62a2390d93b9f8eb\"\u003e\u003ccode\u003e8f247cb\u003c/code\u003e\u003c/a\u003e chore(deps): Update actions/checkout action to v7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/clap-rs/clap/compare/clap_complete-v4.6.6...clap_complete-v4.6.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lazy_static` from 1.5.0 to 1.5.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rust-lang-nursery/lazy-static.rs/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/1ucian0/qiskit-terra/pull/89","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/1ucian0%2Fqiskit-terra/issues/89","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/89/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-06T01:55:20.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5721666967","node_id":"PR_kwDOOwvhL88AAAABG05bwg","number":263,"state":"open","title":"chore(deps): bump the cargo group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-06T01:55:20.000Z","updated_at":"2026-10-06T10:32:00.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"cargo","update_count":3,"packages":[{"name":"uuid","old_version":"1.26.1","new_version":"1.27.0","repository_url":"https://github.com/uuid-rs/uuid"},{"name":"rand","old_version":"0.9.4","new_version":"0.10.3","repository_url":"https://github.com/rust-random/rand"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the cargo group with 3 updates in the / directory: [uuid](https://github.com/uuid-rs/uuid), [rand](https://github.com/rust-random/rand) and [pyo3](https://github.com/pyo3/pyo3).\n\nUpdates `uuid` from 1.26.1 to 1.27.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uuid-rs/uuid/releases\"\u003euuid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.27.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAccept case-insensitive urn:uuid: prefixes when parsing by \u003ca href=\"https://github.com/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix ordering of V7 UUIDs created by earlier seconds with later subsec nanos by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/915\"\u003euuid-rs/uuid#915\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 1.27.0 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/917\"\u003euuid-rs/uuid#917\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/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/pull/912\"\u003euuid-rs/uuid#912\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\"\u003ehttps://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/b62154e8be41ce42127cba08ee5e5cef3e2ea971\"\u003e\u003ccode\u003eb62154e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/917\"\u003e#917\u003c/a\u003e from uuid-rs/cargo/v1.27.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/ffd8ec55f20006fa2b5978cc03a1e671835040e9\"\u003e\u003ccode\u003effd8ec5\u003c/code\u003e\u003c/a\u003e prepare for 1.27.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4b6c10f9dd9cf37809460859ab88071d43703398\"\u003e\u003ccode\u003e4b6c10f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/915\"\u003e#915\u003c/a\u003e from uuid-rs/fix/v7-ordering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a1aa126f97cdc8d9c5c25d56efa0e7bcb9ab0514\"\u003e\u003ccode\u003ea1aa126\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/uuid-rs/uuid/issues/912\"\u003e#912\u003c/a\u003e from jaideeppyne/fix/urn-prefix-case-insensitive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/4639d67b0f117a94cf0add01e4c68e674691b49c\"\u003e\u003ccode\u003e4639d67\u003c/code\u003e\u003c/a\u003e fix ordering of V7 UUIDs created by earlier seconds with later subsec nanos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/272370344a977ee0641ffa4d01b7ad3ca0eda687\"\u003e\u003ccode\u003e2723703\u003c/code\u003e\u003c/a\u003e bump MSRV to 1.89.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/a3e64faaf7fdf583260fc18a594b099677855eea\"\u003e\u003ccode\u003ea3e64fa\u003c/code\u003e\u003c/a\u003e refactor: simplify URN prefix parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/5055fd41c7f33c16a1eac3198eac6224ec18b61d\"\u003e\u003ccode\u003e5055fd4\u003c/code\u003e\u003c/a\u003e refactor: inline case-insensitive URN prefix checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/cb8b1d51421df4828c11ebca6b54c5986caafef6\"\u003e\u003ccode\u003ecb8b1d5\u003c/code\u003e\u003c/a\u003e refactor: simplify case-insensitive URN parsing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uuid-rs/uuid/commit/285967db45b800ffda5032d12c32e3d4e2620902\"\u003e\u003ccode\u003e285967d\u003c/code\u003e\u003c/a\u003e Accept case-insensitive urn:uuid: prefixes when parsing\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rand` from 0.9.4 to 0.10.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-random/rand/blob/master/CHANGELOG.md\"\u003erand's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.10.3] — 2026-09-20\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eWeightedIndex\u003c/code\u003e panic when the sum of float weights is infinite; return \u003ccode\u003eError::Overflow\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1808\"\u003e#1808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix spurious \u003ccode\u003eError::NonFinite\u003c/code\u003e from \u003ccode\u003eUniform::new_inclusive\u003c/code\u003e on large finite float ranges such as \u003ccode\u003e0.0..=f64::MAX\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible panic due to sampling a deserialized \u003ccode\u003eUniform\u0026lt;char\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReport exact remaining lengths from \u003ccode\u003eWeightedIndex::weights()\u003c/code\u003e and reduce overhead when reading weights (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1808\"\u003e#1808\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1808\"\u003erust-random/rand#1808\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1821\"\u003erust-random/rand#1821\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1831\"\u003erust-random/rand#1831\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1838\"\u003erust-random/rand#1838\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e[0.10.2] — 2026-07-02\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix possible memory safety violation due to deserialization of \u003ccode\u003eUniformChar\u003c/code\u003e from bad source (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1790\"\u003e#1790\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument required output order of fn \u003ccode\u003epartial_shuffle\u003c/code\u003e and apply \u003ccode\u003e#[must_use]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid usage of \u003ccode\u003eunsafe\u003c/code\u003e in contexts where non-local memory corruption could invalidate contract (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1791\"\u003e#1791\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1769\"\u003e#1769\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1769\"\u003erust-random/rand#1769\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1790\"\u003e#1790\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1790\"\u003erust-random/rand#1790\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1791\"\u003e#1791\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1791\"\u003erust-random/rand#1791\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e[0.10.1] — 2026-02-11\u003c/h2\u003e\n\u003cp\u003eThis release includes a fix for a soundness bug; see \u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1763\"\u003e#1763\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument panic behavior of \u003ccode\u003emake_rng\u003c/code\u003e and add \u003ccode\u003e#[track_caller]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeprecate feature \u003ccode\u003elog\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1763\"\u003e#1763\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1761\"\u003e#1761\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1761\"\u003erust-random/rand#1761\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1763\"\u003e#1763\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/rust-random/rand/pull/1763\"\u003erust-random/rand#1763\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e[0.10.0] - 2026-02-08\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe dependency on \u003ccode\u003erand_chacha\u003c/code\u003e has been replaced with a dependency on \u003ccode\u003echacha20\u003c/code\u003e. This changes the implementation behind \u003ccode\u003eStdRng\u003c/code\u003e, but the output remains the same. There may be some API breakage when using the ChaCha-types directly as these are now the ones in \u003ccode\u003echacha20\u003c/code\u003e instead of \u003ccode\u003erand_chacha\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1642\"\u003e#1642\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRename fns \u003ccode\u003eIndexedRandom::choose_multiple\u003c/code\u003e -\u0026gt; \u003ccode\u003esample\u003c/code\u003e, \u003ccode\u003echoose_multiple_array\u003c/code\u003e -\u0026gt; \u003ccode\u003esample_array\u003c/code\u003e, \u003ccode\u003echoose_multiple_weighted\u003c/code\u003e -\u0026gt; \u003ccode\u003esample_weighted\u003c/code\u003e, struct \u003ccode\u003eSliceChooseIter\u003c/code\u003e -\u0026gt; \u003ccode\u003eIndexedSamples\u003c/code\u003e and fns \u003ccode\u003eIteratorRandom::choose_multiple\u003c/code\u003e -\u0026gt; \u003ccode\u003esample\u003c/code\u003e, \u003ccode\u003echoose_multiple_fill\u003c/code\u003e -\u0026gt; \u003ccode\u003esample_fill\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1632\"\u003e#1632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse Edition 2024 and MSRV 1.85 (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1653\"\u003e#1653\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLet \u003ccode\u003eFill\u003c/code\u003e be implemented for element types, not sliceable types (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1652\"\u003e#1652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eOsError::raw_os_error\u003c/code\u003e on UEFI targets by returning \u003ccode\u003eOption\u0026lt;usize\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1665\"\u003e#1665\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace fn \u003ccode\u003eTryRngCore::read_adapter(..) -\u0026gt; RngReadAdapter\u003c/code\u003e with simpler struct \u003ccode\u003eRngReader\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1669\"\u003e#1669\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove fns \u003ccode\u003eSeedableRng::from_os_rng\u003c/code\u003e, \u003ccode\u003etry_from_os_rng\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003eClone\u003c/code\u003e support for \u003ccode\u003eStdRng\u003c/code\u003e, \u003ccode\u003eReseedingRng\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1677\"\u003e#1677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epostcard\u003c/code\u003e instead of \u003ccode\u003ebincode\u003c/code\u003e to test the serde feature (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1693\"\u003e#1693\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/rust-random/rand/commit/9e7d328f60d6372ae22927f37d1a816fc980f25e\"\u003e\u003ccode\u003e9e7d328\u003c/code\u003e\u003c/a\u003e Prepare rand 0.10.3 (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1840\"\u003e#1840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/f73ce74d4ac8f47259e871e22939c6c52e17befe\"\u003e\u003ccode\u003ef73ce74\u003c/code\u003e\u003c/a\u003e Optimize WeightedIndex weight lookup and iteration (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/ef9e044b6b1f5fe541516d4b622c9c2d9932d789\"\u003e\u003ccode\u003eef9e044\u003c/code\u003e\u003c/a\u003e Avoid panic from deserialized \u003ccode\u003eUniform\\\u0026lt;char\u0026gt;\u003c/code\u003e where \u003ccode\u003erange == 0\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1831\"\u003e#1831\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/c994eb1e40ab8cc9a929cfe11b345f7296bca393\"\u003e\u003ccode\u003ec994eb1\u003c/code\u003e\u003c/a\u003e docs: fix angle unit in quick start example (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1839\"\u003e#1839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/33dea4fcd044c3425fd8f35ffc9d203c652c3d73\"\u003e\u003ccode\u003e33dea4f\u003c/code\u003e\u003c/a\u003e Test that WeightedIndex rejects INFINITY with Error::Overflow (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1822\"\u003e#1822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/94c9078267aa9ea4e9ad61bd552b35245c995830\"\u003e\u003ccode\u003e94c9078\u003c/code\u003e\u003c/a\u003e Fix Uniform::new_inclusive overflow on large finite float ranges (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1821\"\u003e#1821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/bb1262f703ca04e4ce56be78e1dc4e204cd6a998\"\u003e\u003ccode\u003ebb1262f\u003c/code\u003e\u003c/a\u003e Use Xoshiro256PlusPlus in examples/rayon-monte-carlo.rs (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1805\"\u003e#1805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/521fab6a1bcf349760d2581c2143fbc1aafe8798\"\u003e\u003ccode\u003e521fab6\u003c/code\u003e\u003c/a\u003e Stop pinning dependencies (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1820\"\u003e#1820\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/3f7c4335fd6ba118aaed1ab59b1964808a955d4d\"\u003e\u003ccode\u003e3f7c433\u003c/code\u003e\u003c/a\u003e Stop pinning dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-random/rand/commit/cf4f73e3953ffcf97f575317a07f0fd5983bfe9e\"\u003e\u003ccode\u003ecf4f73e\u003c/code\u003e\u003c/a\u003e sample_efraimidis_spirakis: error on more than amount non-finite weights (\u003ca href=\"https://redirect.github.com/rust-random/rand/issues/1814\"\u003e#1814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-random/rand/compare/0.9.4...0.10.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/Bahia-Software/polypus/pull/263","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bahia-Software%2Fpolypus/issues/263","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/263/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-05T23:51:24.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5720587588","node_id":"PR_kwDOSz2Uwc8AAAABG0Cj4Q","number":583,"state":"open","title":"deps: bump the minor-and-patch group with 5 updates","user":"dependabot[bot]","labels":["deps"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-05T23:51:24.000Z","updated_at":"2026-10-05T23:51:50.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps: bump","group_name":"minor-and-patch","update_count":5,"packages":[{"name":"russh","old_version":"0.63.2","new_version":"0.63.3","repository_url":"https://github.com/warp-tech/russh"},{"name":"lazy_static","old_version":"1.5.0","new_version":"1.5.1","repository_url":"https://github.com/rust-lang-nursery/lazy-static.rs"},{"name":"tokio-rustls","old_version":"0.26.5","new_version":"0.26.6","repository_url":"https://github.com/rustls/tokio-rustls"},{"name":"libc","old_version":"0.2.189","new_version":"0.2.190","repository_url":"https://github.com/rust-lang/libc"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the minor-and-patch group with 5 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [russh](https://github.com/warp-tech/russh) | `0.63.2` | `0.63.3` |\n| [lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs) | `1.5.0` | `1.5.1` |\n| [tokio-rustls](https://github.com/rustls/tokio-rustls) | `0.26.5` | `0.26.6` |\n| [libc](https://github.com/rust-lang/libc) | `0.2.189` | `0.2.190` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n\nUpdates `russh` from 0.63.2 to 0.63.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/warp-tech/russh/releases\"\u003erussh's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.63.3\u003c/h2\u003e\n\u003ch1\u003eFixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ec13b259: enforce inactivity timeout even during stalled writes (Eugene)\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/Eugeny/russh/commit/f33baf439be8c59c49cb6cb2ae5976c579495bdf\"\u003e\u003ccode\u003ef33baf4\u003c/code\u003e\u003c/a\u003e v0.63.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Eugeny/russh/commit/c13b259f51643d993047656ac06db5794877e279\"\u003e\u003ccode\u003ec13b259\u003c/code\u003e\u003c/a\u003e enforce inactivity timeout if even during stalled writes\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/warp-tech/russh/compare/v0.63.2...v0.63.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lazy_static` from 1.5.0 to 1.5.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rust-lang-nursery/lazy-static.rs/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokio-rustls` from 0.26.5 to 0.26.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rustls/tokio-rustls/releases\"\u003etokio-rustls's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.6\u003c/h2\u003e\n\u003cp\u003e0.26.5 added an optimization to batch multiple reads which could swallow some errors. Buffer errors so that they propagate to the caller as soon as the caller next reads from the stream.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuffer and propagate errors from transport by \u003ca href=\"https://github.com/dtolnay\"\u003e\u003ccode\u003e@​dtolnay\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rustls/tokio-rustls/pull/205\"\u003erustls/tokio-rustls#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare 0.26.6 by \u003ca href=\"https://github.com/djc\"\u003e\u003ccode\u003e@​djc\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rustls/tokio-rustls/pull/206\"\u003erustls/tokio-rustls#206\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/rustls/tokio-rustls/commit/8aebb7c9556ea8024c1b974b84a4a6f2e306889a\"\u003e\u003ccode\u003e8aebb7c\u003c/code\u003e\u003c/a\u003e Bump version to 0.26.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/6f8509a2bfca696b2b709f3346086c886620f351\"\u003e\u003ccode\u003e6f8509a\u003c/code\u003e\u003c/a\u003e Rename buffered_err to error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/bd0494d27d03a6cee042ccaf953b11e5bef68747\"\u003e\u003ccode\u003ebd0494d\u003c/code\u003e\u003c/a\u003e Buffer and propagate errors from transport\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/a7813403f55cb777a061a01885487d0ab4dcfb7e\"\u003e\u003ccode\u003ea781340\u003c/code\u003e\u003c/a\u003e Add regression test for issue 204\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/9d0dae6593daec0f9c44144e9ad7127fe574c8b0\"\u003e\u003ccode\u003e9d0dae6\u003c/code\u003e\u003c/a\u003e build(deps): bump rustls from 0.23.44 to 0.23.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/0ad049ef4620161936ee3216a75c0fcecc4b6dfd\"\u003e\u003ccode\u003e0ad049e\u003c/code\u003e\u003c/a\u003e build(deps): bump rustls from 0.23.43 to 0.23.44\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rustls/tokio-rustls/commit/4f913c754aa4171440e50ceb6a160ceebb0d326e\"\u003e\u003ccode\u003e4f913c7\u003c/code\u003e\u003c/a\u003e build(deps): bump rcgen from 0.14.9 to 0.14.10\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rustls/tokio-rustls/compare/v/0.26.5...v/0.26.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `libc` from 0.2.189 to 0.2.190\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/libc/releases\"\u003elibc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.2.190\u003c/h2\u003e\n\u003cp\u003eThere is now a single config for enabling 64-bit \u003ccode\u003etime_t\u003c/code\u003e: \u003ccode\u003elibc_unstable_time64\u003c/code\u003e. This can be set\nunconditionally; it opts in to 64-bit \u003ccode\u003etime_t\u003c/code\u003e on the following platforms that use 32-bit by\ndefault:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e32-bit Linux-GNU\u003c/li\u003e\n\u003cli\u003e32-bit Linux-uClibc\u003c/li\u003e\n\u003cli\u003e32-bit Linux-musl. Note that setting this flag also enables some other changes that happend in\nmusl v1.2.\u003c/li\u003e\n\u003cli\u003e32-bit Windows-GNU\u003c/li\u003e\n\u003cli\u003eESP-IDF (all targets with this environment are 32-bit)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMost other 32-bit platforms are either already using 64-bit \u003ccode\u003etime_t\u003c/code\u003e, or are considered legacy\nand will not be gaining support from their upstream maintainers.\u003c/p\u003e\n\u003cp\u003eYou can enable this using \u003ccode\u003eRUSTFLAGS\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_time64' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote that there may still be some changes to features gated by this config option, hence \u0026quot;unstable\u0026quot;\nin its name. In the near future we will rename it to just \u003ccode\u003elibc_time64\u003c/code\u003e. Until then, please test it\nout and report any bugs you find!\u003c/p\u003e\n\u003ch3\u003eSupport\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd initial support for HelenOS (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4355\"\u003e#4355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cp\u003eWe are slowly filling out the \u003ccode\u003eDefault\u003c/code\u003e implementations, to reduce the need for \u003ccode\u003emem::zeroed()\u003c/code\u003e in user code:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUnix: Implement \u003ccode\u003eDefault\u003c/code\u003e for a number of structs, especially on Apple platforms (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5576\"\u003e#5576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux, NetBSD: Give \u003ccode\u003estatvfs\u003c/code\u003e a \u003ccode\u003eDefault\u003c/code\u003e impl (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5583\"\u003e#5583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux: Add \u003ccode\u003eDefault\u003c/code\u003e to a \u003ccode\u003elinux/can.rs\u003c/code\u003e structs (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5257\"\u003e#5257\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther additions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eExpose the \u003ccode\u003elibc_unstable_time64\u003c/code\u003e cfg (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5411\"\u003e#5411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid, Glibc: Add \u003ccode\u003epthread_gettid_np\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5359\"\u003e#5359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add \u003ccode\u003eRTLD_NEXT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5323\"\u003e#5323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add reuseport BPF socket options (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5366\"\u003e#5366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add TCP header flags, options and SACK limits (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5358\"\u003e#5358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eNET_RT_DUMP2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5442\"\u003e#5442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5558\"\u003e#5558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eBPF_WORDALIGN\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5320\"\u003e#5320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003elchmod\u003c/code\u003e and \u003ccode\u003elchflags\u003c/code\u003e where supported (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5400\"\u003e#5400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eminherit\u003c/code\u003e and related constants (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4849\"\u003e#4849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Add more links to public headers and manual pages (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5407\"\u003e#5407\u003c/a\u003e), (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5485\"\u003e#5485\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/rust-lang/libc/blob/0.2.190/CHANGELOG.md\"\u003elibc's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.189...0.2.190\"\u003e0.2.190\u003c/a\u003e - 2026-10-02\u003c/h2\u003e\n\u003cp\u003eThere is now a single config for enabling 64-bit \u003ccode\u003etime_t\u003c/code\u003e: \u003ccode\u003elibc_unstable_time64\u003c/code\u003e. This can be set\nunconditionally; it opts in to 64-bit \u003ccode\u003etime_t\u003c/code\u003e on the following platforms that use 32-bit by\ndefault:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e32-bit Linux-GNU\u003c/li\u003e\n\u003cli\u003e32-bit Linux-uClibc\u003c/li\u003e\n\u003cli\u003e32-bit Linux-musl. Note that setting this flag also enables some other changes that happend in\nmusl v1.2.\u003c/li\u003e\n\u003cli\u003e32-bit Windows-GNU\u003c/li\u003e\n\u003cli\u003eESP-IDF (all targets with this environment are 32-bit)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMost other 32-bit platforms are either already using 64-bit \u003ccode\u003etime_t\u003c/code\u003e, or are considered legacy\nand will not be gaining support from their upstream maintainers.\u003c/p\u003e\n\u003cp\u003eYou can enable this using \u003ccode\u003eRUSTFLAGS\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_time64' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote that there may still be some changes to features gated by this config option, hence \u0026quot;unstable\u0026quot;\nin its name. In the near future we will rename it to just \u003ccode\u003elibc_time64\u003c/code\u003e. Until then, please test it\nout and report any bugs you find!\u003c/p\u003e\n\u003ch3\u003eSupport\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd initial support for HelenOS (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4355\"\u003e#4355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cp\u003eWe are slowly filling out the \u003ccode\u003eDefault\u003c/code\u003e implementations, to reduce the need for \u003ccode\u003emem::zeroed()\u003c/code\u003e in user code:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUnix: Implement \u003ccode\u003eDefault\u003c/code\u003e for a number of structs, especially on Apple platforms (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5576\"\u003e#5576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux, NetBSD: Give \u003ccode\u003estatvfs\u003c/code\u003e a \u003ccode\u003eDefault\u003c/code\u003e impl (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5583\"\u003e#5583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux: Add \u003ccode\u003eDefault\u003c/code\u003e to a \u003ccode\u003elinux/can.rs\u003c/code\u003e structs (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5257\"\u003e#5257\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther additions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eExpose the \u003ccode\u003elibc_unstable_time64\u003c/code\u003e cfg (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5411\"\u003e#5411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid, Glibc: Add \u003ccode\u003epthread_gettid_np\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5359\"\u003e#5359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add \u003ccode\u003eRTLD_NEXT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5323\"\u003e#5323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAndroid: Add reuseport BPF socket options (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5366\"\u003e#5366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add TCP header flags, options and SACK limits (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5358\"\u003e#5358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eNET_RT_DUMP2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5442\"\u003e#5442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eApple: Add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5558\"\u003e#5558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eBPF_WORDALIGN\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5320\"\u003e#5320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003elchmod\u003c/code\u003e and \u003ccode\u003elchflags\u003c/code\u003e where supported (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5400\"\u003e#5400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBSD: Add \u003ccode\u003eminherit\u003c/code\u003e and related constants (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4849\"\u003e#4849\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/rust-lang/libc/commit/7b0ab5528dc7f361f3a0b4c06c2cad9971617f75\"\u003e\u003ccode\u003e7b0ab55\u003c/code\u003e\u003c/a\u003e ci: Rename \u003ccode\u003epublish_0.2.yml\u003c/code\u003e to \u003ccode\u003erelease.yaml\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/ac85dde5fc269ab4a8cd935d3f76adf85372677c\"\u003e\u003ccode\u003eac85dde\u003c/code\u003e\u003c/a\u003e ci: Sync release permissions with \u003ccode\u003emain\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8f8cd2032060e1477c08077cd5f89215384723e2\"\u003e\u003ccode\u003e8f8cd20\u003c/code\u003e\u003c/a\u003e libc: Release 0.2.190\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/052c6e6a0186eeecf22c743d57c65a9963571241\"\u003e\u003ccode\u003e052c6e6\u003c/code\u003e\u003c/a\u003e changelog: Fix an incorrect commit link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/ea19fd7fba435c629ed247de7138d5cdb1dea309\"\u003e\u003ccode\u003eea19fd7\u003c/code\u003e\u003c/a\u003e test: Remove explicit \u003ccode\u003elibc\u003c/code\u003e version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/6dbf3a29a0a972087b684bc6d6cbf20f92143b66\"\u003e\u003ccode\u003e6dbf3a2\u003c/code\u003e\u003c/a\u003e dragonfly: Move \u003ccode\u003eINHERIT_ZERO\u003c/code\u003e to the freebsd module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8a64766c8514865dea77cfc3216f5a9dc38c6728\"\u003e\u003ccode\u003e8a64766\u003c/code\u003e\u003c/a\u003e apple: add \u003ccode\u003eposix_spawn_file_actions_add(f)chdir(_np)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/28de5147ff5665b835472f00ead49da71084a593\"\u003e\u003ccode\u003e28de514\u003c/code\u003e\u003c/a\u003e linux, netbsd: Give statvfs a \u003ccode\u003eDefault\u003c/code\u003e impl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/a58a95f01d0561e75261052f5d8b3ad188f1ae4e\"\u003e\u003ccode\u003ea58a95f\u003c/code\u003e\u003c/a\u003e cygwin: Change \u003ccode\u003ePOSIX_SPAWN_*\u003c/code\u003e flags to \u003ccode\u003ec_short\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/d175264e718db4f216df7aad5f1291fd0ec34139\"\u003e\u003ccode\u003ed175264\u003c/code\u003e\u003c/a\u003e apple: \u003ccode\u003etimeval32\u003c/code\u003e is exhaustive\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.189...0.2.190\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/GeiserX/tailscale-rs/pull/583","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeiserX%2Ftailscale-rs/issues/583","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/583/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-05T11:38:07.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5711308367","node_id":"PR_kwDOTEV0gs8AAAABGsiIFg","number":1899,"state":"closed","title":"chore(deps): Bump the cargo-minor-patch group across 1 directory with 7 updates","user":"dependabot[bot]","labels":["rust","dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-10-06T08:53:59.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-05T11:38:07.000Z","updated_at":"2026-10-06T08:54:02.000Z","time_to_close":76552,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): Bump","group_name":"cargo-minor-patch","update_count":7,"packages":[{"name":"napi","old_version":"3.13.0","new_version":"3.14.0","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-build","old_version":"2.5.0","new_version":"2.6.0","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"napi-derive","old_version":"3.6.9","new_version":"3.6.10","repository_url":"https://github.com/napi-rs/napi-rs"},{"name":"pg_query","old_version":"6.2.0","new_version":"6.2.1","repository_url":"https://github.com/pganalyze/pg_query.rs"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"pyo3-build-config","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"wat","old_version":"1.259.0","new_version":"1.261.0","repository_url":"https://github.com/bytecodealliance/wasm-tools"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the cargo-minor-patch group with 7 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [napi](https://github.com/napi-rs/napi-rs) | `3.13.0` | `3.14.0` |\n| [napi-build](https://github.com/napi-rs/napi-rs) | `2.5.0` | `2.6.0` |\n| [napi-derive](https://github.com/napi-rs/napi-rs) | `3.6.9` | `3.6.10` |\n| [pg_query](https://github.com/pganalyze/pg_query.rs) | `6.2.0` | `6.2.1` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [pyo3-build-config](https://github.com/pyo3/pyo3) | `0.29.2` | `0.29.3` |\n| [wat](https://github.com/bytecodealliance/wasm-tools) | `1.259.0` | `1.261.0` |\n\n\nUpdates `napi` from 3.13.0 to 3.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-v3.14.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(napi)\u003c/em\u003e lock the allocator on threaded WASI and never hang after a worker crash (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3552\"\u003e#3552\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-v3.13.0...napi-v3.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-build` from 2.5.0 to 2.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-build's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-build-v2.6.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(async-runtime)\u003c/em\u003e offer the MultiThread flavor on wasm32-wasip1-threads (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/pull/3541\"\u003e#3541\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/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-build-v2.5.0...napi-build-v2.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `napi-derive` from 3.6.9 to 3.6.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/napi-rs/napi-rs/releases\"\u003enapi-derive's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enapi-derive-v3.6.10\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate Cargo.toml dependencies\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/napi-rs/napi-rs/commit/37109f133043aff379a38edfb8b1548e7e9309e5\"\u003e\u003ccode\u003e37109f1\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3544\"\u003e#3544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/12e6793b37473119bae9f842a2eb156d9ef32774\"\u003e\u003ccode\u003e12e6793\u003c/code\u003e\u003c/a\u003e chore(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/9f46379d0d5743acb212ff904a952ab95c0d16d1\"\u003e\u003ccode\u003e9f46379\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxc-parser to ^0.152.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/a94cef33f62e74682963dd085e283f52dcec2600\"\u003e\u003ccode\u003ea94cef3\u003c/code\u003e\u003c/a\u003e feat(napi): lock the allocator on threaded WASI and never hang after a worker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/e50c81991ed0e396ef3f7765af032e3a681368ae\"\u003e\u003ccode\u003ee50c819\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.71.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3549\"\u003e#3549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/29d4fa5b9fc7eda8b5cdeeb60f88bc9d01640be3\"\u003e\u003ccode\u003e29d4fa5\u003c/code\u003e\u003c/a\u003e ci: replace yarn with nodejs in msys2 pacboy install (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3553\"\u003e#3553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/afbe5dfcf14cb5d0114aa44e07dd454e7b808886\"\u003e\u003ccode\u003eafbe5df\u003c/code\u003e\u003c/a\u003e chore(deps): update yarn to v4.18.1 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3547\"\u003e#3547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napi-rs/napi-rs/commit/210bc2732c07a1e1b391d877a105bc3e896b16d2\"\u003e\u003ccode\u003e210bc27\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxfmt to ^0.70.0 (\u003ca href=\"https://redirect.github.com/napi-rs/napi-rs/issues/3543\"\u003e#3543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/napi-rs/napi-rs/compare/napi-derive-v3.6.9...napi-derive-v3.6.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pg_query` from 6.2.0 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pganalyze/pg_query.rs/blob/main/CHANGELOG.md\"\u003epg_query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1   2026-09-30\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to libpg_query 17-6.2.5\u003c/li\u003e\n\u003cli\u003eSecurity fix: Heap out-of-bounds write and read in pg_query_normalize (\u003ca href=\"https://github.com/pganalyze/libpg_query/security/advisories/GHSA-6ggm-xmc9-8ffg\"\u003eGHSA-6ggm-xmc9-8ffg\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeparser:\n\u003cul\u003e\n\u003cli\u003eAdd strict checking for unexpected pointer values\u003c/li\u003e\n\u003cli\u003ePreserve parentheses around subscripted array constructors\n\u003cul\u003e\n\u003cli\u003eThis prevents \u003ccode\u003e(ARRAY[...])[...]\u003c/code\u003e from being deparsed as invalid SQL\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix handling of constraint key named \u003ccode\u003evalue\u003c/code\u003e in \u003ccode\u003eALTER TABLE\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003epg_query_normalize:\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eNOTIFY\u003c/code\u003e statements\u003c/li\u003e\n\u003cli\u003eAvoid undefined behaviour for overly large parameter references\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pganalyze/pg_query.rs/commit/c780e49d095c7c97def832e45ada3f559d5b42cf\"\u003e\u003ccode\u003ec780e49\u003c/code\u003e\u003c/a\u003e Release 6.2.1 (\u003ca href=\"https://redirect.github.com/pganalyze/pg_query.rs/issues/84\"\u003e#84\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pganalyze/pg_query.rs/commit/288e41028cf5b8380c30a3c860cba87592a241e8\"\u003e\u003ccode\u003e288e410\u003c/code\u003e\u003c/a\u003e Propagate real bindgen error in build.rs (\u003ca href=\"https://redirect.github.com/pganalyze/pg_query.rs/issues/81\"\u003e#81\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/pganalyze/pg_query.rs/compare/v6.2.0...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3-build-config` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3-build-config's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3-build-config's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `wat` from 1.259.0 to 1.261.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/releases\"\u003ewat's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.261.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch to ignoring semver-minor updates by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2710\"\u003ebytecodealliance/wasm-tools#2710\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump actions/setup-node from 4 to 7 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/bytecodealliance/wasm-tools/pull/2712\"\u003ebytecodealliance/wasm-tools#2712\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore semver-patch updates in dependabot by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2716\"\u003ebytecodealliance/wasm-tools#2716\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewit-parser: reject duplicate record fields, flags and cases by \u003ca href=\"https://github.com/youdie006\"\u003e\u003ccode\u003e@​youdie006\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2698\"\u003ebytecodealliance/wasm-tools#2698\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-wave: Upgrade logos to 0.16.1 by \u003ca href=\"https://github.com/lann\"\u003e\u003ccode\u003e@​lann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2718\"\u003ebytecodealliance/wasm-tools#2718\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewit-parser: reject flags with more than 32 members by \u003ca href=\"https://github.com/youdie006\"\u003e\u003ccode\u003e@​youdie006\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2719\"\u003ebytecodealliance/wasm-tools#2719\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix some issues validating custom sections by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2720\"\u003ebytecodealliance/wasm-tools#2720\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix incremental parsing of component \u003ccode\u003estart\u003c/code\u003e section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2722\"\u003ebytecodealliance/wasm-tools#2722\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_var_s33\u003c/code\u003e and handling in component defined types by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2723\"\u003ebytecodealliance/wasm-tools#2723\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject truncated nested modules and components by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2724\"\u003ebytecodealliance/wasm-tools#2724\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix validation of the key types of \u003ccode\u003emap\u003c/code\u003e by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2725\"\u003ebytecodealliance/wasm-tools#2725\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTighten some feature gates in \u003ccode\u003ewasmparser\u003c/code\u003e by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2721\"\u003ebytecodealliance/wasm-tools#2721\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix disallowing borrows in streams/futures/values by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2727\"\u003ebytecodealliance/wasm-tools#2727\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix some custom-descriptors validation of dead code by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2734\"\u003ebytecodealliance/wasm-tools#2734\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit total components/modules in validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2730\"\u003ebytecodealliance/wasm-tools#2730\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix validation of tags in components by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2741\"\u003ebytecodealliance/wasm-tools#2741\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease wasm-tools 1.261.0 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2738\"\u003ebytecodealliance/wasm-tools#2738\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix incorrect async callback validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2742\"\u003ebytecodealliance/wasm-tools#2742\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/compare/v1.260.0...v1.261.0\"\u003ehttps://github.com/bytecodealliance/wasm-tools/compare/v1.260.0...v1.261.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.260.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eperf: optimize \u003ccode\u003eOperatorsReader::skip_const_expr\u003c/code\u003e by \u003ca href=\"https://github.com/dishmaker\"\u003e\u003ccode\u003e@​dishmaker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2653\"\u003ebytecodealliance/wasm-tools#2653\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrint params/results of imports by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2654\"\u003ebytecodealliance/wasm-tools#2654\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-mutate: add global mutator by \u003ca href=\"https://github.com/GtechGovind\"\u003e\u003ccode\u003e@​GtechGovind\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2641\"\u003ebytecodealliance/wasm-tools#2641\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-encoder: add \u003ccode\u003eComponentBuilder::start()\u003c/code\u003e by \u003ca href=\"https://github.com/zacharywhitley\"\u003e\u003ccode\u003e@​zacharywhitley\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2657\"\u003ebytecodealliance/wasm-tools#2657\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: validate linker intrinsic function signatures by \u003ca href=\"https://github.com/RanaPriyansh\"\u003e\u003ccode\u003e@​RanaPriyansh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2646\"\u003ebytecodealliance/wasm-tools#2646\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix handling of names of fields in the text format by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2651\"\u003ebytecodealliance/wasm-tools#2651\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't emit a second \u003ccode\u003ename\u003c/code\u003e section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2659\"\u003ebytecodealliance/wasm-tools#2659\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate extended-name-section proposal implementation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2658\"\u003ebytecodealliance/wasm-tools#2658\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplement canonical interface names in wit-component by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2622\"\u003ebytecodealliance/wasm-tools#2622\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-mutate: add export mutator by \u003ca href=\"https://github.com/GtechGovind\"\u003e\u003ccode\u003e@​GtechGovind\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2639\"\u003ebytecodealliance/wasm-tools#2639\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasmparser: Increase \u003ccode\u003eMAX_WASM_INSTANCES\u003c/code\u003e to \u003ccode\u003e4_096\u003c/code\u003e by \u003ca href=\"https://github.com/noobHappylife\"\u003e\u003ccode\u003e@​noobHappylife\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2661\"\u003ebytecodealliance/wasm-tools#2661\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ewasm-encoder: add ComponentBuilder::instantiate_exports by \u003ca href=\"https://github.com/zacharywhitley\"\u003e\u003ccode\u003e@​zacharywhitley\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2655\"\u003ebytecodealliance/wasm-tools#2655\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTry out dependabot on this repo by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2662\"\u003ebytecodealliance/wasm-tools#2662\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix parsing empty compact import encoding groups by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2664\"\u003ebytecodealliance/wasm-tools#2664\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix an invalid mutation with a tag section by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2665\"\u003ebytecodealliance/wasm-tools#2665\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport multiple supertypes in everything but validation by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2652\"\u003ebytecodealliance/wasm-tools#2652\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate spec test suite submodule by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2667\"\u003ebytecodealliance/wasm-tools#2667\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplement validation of custom sections by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2668\"\u003ebytecodealliance/wasm-tools#2668\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove unused dependencies from workspace by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2669\"\u003ebytecodealliance/wasm-tools#2669\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add \u003ccode\u003e{stream,future}.forward\u003c/code\u003e canon builtins by \u003ca href=\"https://github.com/rvolosatovs\"\u003e\u003ccode\u003e@​rvolosatovs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2614\"\u003ebytecodealliance/wasm-tools#2614\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ewasm-tools component new\u003c/code\u003e for page-size-1 memory by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2666\"\u003ebytecodealliance/wasm-tools#2666\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd getter and setter support by \u003ca href=\"https://github.com/bvisness\"\u003e\u003ccode\u003e@​bvisness\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2660\"\u003ebytecodealliance/wasm-tools#2660\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRename seq_cst/acq_rel in the text format by \u003ca href=\"https://github.com/alexcrichton\"\u003e\u003ccode\u003e@​alexcrichton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2673\"\u003ebytecodealliance/wasm-tools#2673\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(canonical-names): disallow encoding multiple exports with the same name by \u003ca href=\"https://github.com/chenyan2002\"\u003e\u003ccode\u003e@​chenyan2002\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/pull/2672\"\u003ebytecodealliance/wasm-tools#2672\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/bytecodealliance/wasm-tools/commit/5793351e3190a178d0dbdd509d183b6da896090a\"\u003e\u003ccode\u003e5793351\u003c/code\u003e\u003c/a\u003e Release wasm-tools 1.261.0 (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2738\"\u003e#2738\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/de1811cf001af4deb0a15288435340bbb4c711fa\"\u003e\u003ccode\u003ede1811c\u003c/code\u003e\u003c/a\u003e fix incorrect async callback validation (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2742\"\u003e#2742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/45eb6b6481b7699a42d4f901593b73e3155194fc\"\u003e\u003ccode\u003e45eb6b6\u003c/code\u003e\u003c/a\u003e Fix validation of tags in components (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2741\"\u003e#2741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/ade02824ce01545c0b2a48451e7b362f3f7074e7\"\u003e\u003ccode\u003eade0282\u003c/code\u003e\u003c/a\u003e Limit total components/modules in validation (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2730\"\u003e#2730\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d129fe42f9764d35c3a9d5dacac1f6fd1d3f1ea2\"\u003e\u003ccode\u003ed129fe4\u003c/code\u003e\u003c/a\u003e Fix disallowing borrows in streams/futures/values (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2727\"\u003e#2727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d4903a18e540cf1cc747a8e3a2aebcac7ad602f5\"\u003e\u003ccode\u003ed4903a1\u003c/code\u003e\u003c/a\u003e Tighten some feature gates in \u003ccode\u003ewasmparser\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2721\"\u003e#2721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/7385c089cecb0f6a2fe9f95d6a302cf0100bcfc1\"\u003e\u003ccode\u003e7385c08\u003c/code\u003e\u003c/a\u003e Fix some custom-descriptors validation of dead code (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2734\"\u003e#2734\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/65d480abad54094ab39242fa5f35ee2c54f87f10\"\u003e\u003ccode\u003e65d480a\u003c/code\u003e\u003c/a\u003e Fix validation of the key types of \u003ccode\u003emap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2725\"\u003e#2725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/d2d492d4793143bd2cc651f4e9a150c6cb8ce197\"\u003e\u003ccode\u003ed2d492d\u003c/code\u003e\u003c/a\u003e Reject truncated nested modules and components (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2724\"\u003e#2724\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bytecodealliance/wasm-tools/commit/ccacc243a0047c2c4d34c17559a76a446f4fdc83\"\u003e\u003ccode\u003eccacc24\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eread_var_s33\u003c/code\u003e and handling in component defined types (\u003ca href=\"https://redirect.github.com/bytecodealliance/wasm-tools/issues/2723\"\u003e#2723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/bytecodealliance/wasm-tools/compare/v1.259.0...v1.261.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e","html_url":"https://github.com/registrystack/registry-stack/pull/1899","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/registrystack%2Fregistry-stack/issues/1899","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1899/packages"}},{"old_version":"0.29.0","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-04T04:52:47.000Z","version_change":"0.29.0 → 0.29.3","issue":{"uuid":"5696357841","node_id":"PR_kwDOSS4ZEs8AAAABGgxnZg","number":25,"state":"open","title":"chore(deps): bump pyo3 from 0.29.0 to 0.29.3","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-10-04T04:52:47.000Z","updated_at":"2026-10-04T04:53:45.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"pyo3","old_version":"0.29.0","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.29.0 to 0.29.3.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.29.2\u003c/h2\u003e\n\u003cp\u003eThis patch fixes a regression in PyO3 0.29.1 which broke PyPy 3.11 compatibility (\u003ccode\u003e#[pyclass]\u003c/code\u003e types would crash PyPy on instance deletion).\u003c/p\u003e\n\u003cp\u003eA few further fixes have also landed with similar themes to PyO3 0.29.1: fixes to minor reference counting bugs, rough edges which would cause crashes, issues which would cause failed builds, and fixes to \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation.\u003c/p\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/ImFeH2\"\u003e\u003ccode\u003e@​ImFeH2\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Tpt\"\u003e\u003ccode\u003e@​Tpt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/WaterWhisperer\"\u003e\u003ccode\u003e@​WaterWhisperer\u003c/code\u003e\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.29.2] - 2026-08-05\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePYO3_USE_RAW_DYLIB=0\u003c/code\u003e opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6185\"\u003e#6185\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.0...v0.29.3\"\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=pyo3\u0026package-manager=cargo\u0026previous-version=0.29.0\u0026new-version=0.29.3)](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 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/Sigilweaver/DICOM-Atlas/pull/25","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sigilweaver%2FDICOM-Atlas/issues/25","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/25/packages"}},{"old_version":"0.29.2","new_version":"0.29.3","update_type":"patch","path":null,"pr_created_at":"2026-10-04T02:23:49.000Z","version_change":"0.29.2 → 0.29.3","issue":{"uuid":"5695539779","node_id":"PR_kwDOUudVZs8AAAABGgJU8g","number":6,"state":"closed","title":"build(deps): bump the rust-minor-patch group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-10-11T03:00:09.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-04T02:23:49.000Z","updated_at":"2026-10-11T03:00:13.000Z","time_to_close":606980,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"rust-minor-patch","update_count":2,"packages":[{"name":"thiserror","old_version":"2.0.20","new_version":"2.0.21","repository_url":"https://github.com/dtolnay/thiserror"},{"name":"pyo3","old_version":"0.29.2","new_version":"0.29.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the rust-minor-patch group with 2 updates in the /rust directory: [thiserror](https://github.com/dtolnay/thiserror) and [pyo3](https://github.com/pyo3/pyo3).\n\nUpdates `thiserror` from 2.0.20 to 2.0.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/thiserror/releases\"\u003ethiserror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix parsing of generic unit variants in display expressions (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\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/dtolnay/thiserror/commit/b1827ee06f81a7d7f954e676771e19a97f9f8e3b\"\u003e\u003ccode\u003eb1827ee\u003c/code\u003e\u003c/a\u003e Release 2.0.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/58037b575a2a5543d0d54a49360554325b49f55a\"\u003e\u003ccode\u003e58037b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e from dtolnay/turbofish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/f82a0cf8f06c71263c2caa26e759f337d2778153\"\u003e\u003ccode\u003ef82a0cf\u003c/code\u003e\u003c/a\u003e Keep track of nested turbofish depth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72ea49262d6412ccbc08f1696dda8626409e657d\"\u003e\u003ccode\u003e72ea492\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72eea0d4ddb17ff9fa873aa74469de850021b22e\"\u003e\u003ccode\u003e72eea0d\u003c/code\u003e\u003c/a\u003e Resolve io_other_error clippy lint in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/07f09a2ec934df58508ce4fa5e7fbf27cca552c2\"\u003e\u003ccode\u003e07f09a2\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.74\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/2715388e8cc5787b3643251f7a7a637e89376688\"\u003e\u003ccode\u003e2715388\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/5a306c7d0a8588caaaaa6a7567aeb25c1c10719b\"\u003e\u003ccode\u003e5a306c7\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/ef9383b37d7c96b01e10df35d3e9e313c7b98b5a\"\u003e\u003ccode\u003eef9383b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-08-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/8336b8407fbfe69177c504cdbc379db20cf6f131\"\u003e\u003ccode\u003e8336b84\u003c/code\u003e\u003c/a\u003e Update ui tests for version 2.0.20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dtolnay/thiserror/compare/2.0.20...2.0.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.2 to 0.29.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.3\u003c/h2\u003e\n\u003cp\u003eThis release is a series of fixes worth landing to the PyO3 0.29 series; the PyO3 0.30 release is planned to follow within a few weeks, however during the development cycle a number of rough edges were discovered which were deemed worth a backport.\u003c/p\u003e\n\u003cp\u003eThe patch broadly includes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ea further fix the to the opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows introduced in PyO3 0.29.1 (the switch to \u003ccode\u003eraw-dylib\u003c/code\u003e linking was introduced in PyO3 0.29.0),\u003c/li\u003e\n\u003cli\u003efixes to support GraalPy on windows,\u003c/li\u003e\n\u003cli\u003ea handful of small performance optimizations,\u003c/li\u003e\n\u003cli\u003ea number of non-breaking fixes to the \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation (expect more improvements in 0.30), and\u003c/li\u003e\n\u003cli\u003evarious other bugfixes such as to FFI definitions, to resolve crashes, and to fix clippy lints caused by PyO3 macros.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/adamgerhant-ai\"\u003e\u003ccode\u003e@​adamgerhant-ai\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/dylanpulver\"\u003e\u003ccode\u003e@​dylanpulver\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FranciscoTGouveia\"\u003e\u003ccode\u003e@​FranciscoTGouveia\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/JMak-Security\"\u003e\u003ccode\u003e@​JMak-Security\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jorenham\"\u003e\u003ccode\u003e@​jorenham\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/konstin\"\u003e\u003ccode\u003e@​konstin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/mejrs\"\u003e\u003ccode\u003e@​mejrs\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/PeterFaiman\"\u003e\u003ccode\u003e@​PeterFaiman\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/sneakers-the-rat\"\u003e\u003ccode\u003e@​sneakers-the-rat\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.3] - 2026-09-30\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport GraalPy on Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6406\"\u003e#6406\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyModule_GetState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyModule_GetToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyObject_GetTypeData_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModuleState_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetBaseByToken_DuringGC\u003c/code\u003e, \u003ccode\u003ePyType_GetModule_DuringGC\u003c/code\u003e, and \u003ccode\u003ePyType_GetModuleByToken_DuringGC\u003c/code\u003e for Python 3.15 and up. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6419\"\u003e#6419\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize \u003ccode\u003eu128\u003c/code\u003e/\u003ccode\u003ei128\u003c/code\u003e conversions on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6160\"\u003e#6160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreallocate output sets when extracting Python \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003efrozenset\u003c/code\u003e values into Rust hash sets. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6225\"\u003e#6225\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOptimize \u003ccode\u003ePyBytes::as_bytes()\u003c/code\u003e when not using \u003ccode\u003eabi3\u003c/code\u003e or \u003ccode\u003eabi3t\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6377\"\u003e#6377\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove FFI definitions \u003ccode\u003ePyExc_RecursionErrorInst\u003c/code\u003e and \u003ccode\u003ePy_UseClassExceptionsFlag\u003c/code\u003e (not present in supported Python versions). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert removal of FFI definition \u003ccode\u003e_PyFrameEvalFunction\u003c/code\u003e, \u003ccode\u003e_PyInterpreterState_GetEvalFrameFunc\u003c/code\u003e and \u003ccode\u003e_PyInterpreterState_SetEvalFrameFunc\u003c/code\u003e, which are not currently treated as CPython private API despite their name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyUnstable_Eval_RequestCodeExtraIndex\u003c/code\u003e FFI binding to link to the private CPython symbol on Python versions before 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6195\"\u003e#6195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: deduplicate repeated members of a type union in the generated stubs, and put a space on both sides of the \u003ccode\u003e|\u003c/code\u003e rather than only before it. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6273\"\u003e#6273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__next__\u003c/code\u003e and \u003ccode\u003e__anext__\u003c/code\u003e returning \u003ccode\u003eOption\u0026lt;T\u0026gt;\u003c/code\u003e (or \u003ccode\u003ePyResult\u0026lt;Option\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e) are now introspected as returning \u003ccode\u003eT\u003c/code\u003e, since \u003ccode\u003eNone\u003c/code\u003e stops the iteration instead of being yielded. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6274\"\u003e#6274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::clone_on_copy\u003c/code\u003e warnings triggered on nightly Rust by \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e on classes which implement \u003ccode\u003eCopy\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6309\"\u003e#6309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: \u003ccode\u003e__pow__\u003c/code\u003e, \u003ccode\u003e__rpow__\u003c/code\u003e and \u003ccode\u003e__get__\u003c/code\u003e now introspect their trailing argument as defaulting to \u003ccode\u003eNone\u003c/code\u003e, matching the CPython slot wrappers which substitute \u003ccode\u003eNone\u003c/code\u003e when it is omitted. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6363\"\u003e#6363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the stubs of a package nested inside another package being written into a directory named after its parent instead of its own name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6365\"\u003e#6365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6389\"\u003e#6389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix empty tuple type hints being rendered as invalid \u003ccode\u003etuple[]\u003c/code\u003e instead of \u003ccode\u003etuple[()]\u003c/code\u003e in generated stubs and \u003ccode\u003ePyStaticExpr\u003c/code\u003e display. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6393\"\u003e#6393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: escape stub docstrings to prevent invalid Python syntax. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6394\"\u003e#6394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: fix the generated type annotation for \u003ccode\u003ePyBuffer\u003c/code\u003e on \u003ccode\u003epython \u0026lt;3.12\u003c/code\u003e by using \u003ccode\u003etyping_extensions.Buffer\u003c/code\u003e instead of \u003ccode\u003ecollections.abc.Buffer\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6395\"\u003e#6395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix string constants containing control characters rendering as invalid Python in \u003ccode\u003eDisplay for PyStaticExpr\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6397\"\u003e#6397\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when a detached thread is terminated while trying to reattach during interpreter finalization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6404\"\u003e#6404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix link failures on 32-bit Windows when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DLL load failures on Windows with PyPy when \u003ccode\u003eraw-dylib\u003c/code\u003e linking is disabled. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyVectorcall_Call\u003c/code\u003e failing to link on Python 3.11 and older. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6410\"\u003e#6410\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix many unresolved data symbols when linking for PyPy due to incorrect link names in \u003ccode\u003epyo3-ffi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6421\"\u003e#6421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix linker errors on PyPy for outdated FFI definitions where PyPy moved from a function to a macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6422\"\u003e#6422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix crash when GC traverses a \u003ccode\u003e#[pyclass]\u003c/code\u003e type object during class attribute initialization. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6453\"\u003e#6453\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/PyO3/pyo3/commit/451d99fdcdcddf159e8e0a1186960b332cdb5d7c\"\u003e\u003ccode\u003e451d99f\u003c/code\u003e\u003c/a\u003e release: 0.29.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/a19b491d34a550e6b1acc84dc85aa631d2775c8a\"\u003e\u003ccode\u003ea19b491\u003c/code\u003e\u003c/a\u003e ci: Exclude the Python extensions article from guide checks (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6472\"\u003e#6472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d76560a93161e4a25a34fbeb367ff663422dd665\"\u003e\u003ccode\u003ed76560a\u003c/code\u003e\u003c/a\u003e ci: exclude current release tag from link check (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6463\"\u003e#6463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91c0e7d6e718e20d52632b9cd0690854bddeb119\"\u003e\u003ccode\u003e91c0e7d\u003c/code\u003e\u003c/a\u003e fix crash with GC during attribute initialization (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6453\"\u003e#6453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9d467b1489ab51b61d2e792a2a2a593f724e3041\"\u003e\u003ccode\u003e9d467b1\u003c/code\u003e\u003c/a\u003e only override env vars on Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/945e62af70d84a56e20c93a8ca377933f4b215c6\"\u003e\u003ccode\u003e945e62a\u003c/code\u003e\u003c/a\u003e bump GraalPy versions tested in CI, test graalpy on windows (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6406\"\u003e#6406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/9712753b777adf65f928d35ebf120e8d7d70dc45\"\u003e\u003ccode\u003e9712753\u003c/code\u003e\u003c/a\u003e fix 3.8 ffi checks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/42a8fcc6de591c2131c108c45f440627d615af89\"\u003e\u003ccode\u003e42a8fcc\u003c/code\u003e\u003c/a\u003e fix clippy lint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6334\"\u003e#6334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/018dbccb5f41005ed3d7e486fb7a04f2a5fd981b\"\u003e\u003ccode\u003e018dbcc\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eDuringGC\u003c/code\u003e FFI bindings for 3.15 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6419\"\u003e#6419\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/75ada930c9fda285c46dcc85f620a43bbaacb92e\"\u003e\u003ccode\u003e75ada93\u003c/code\u003e\u003c/a\u003e fix FFI cases where PyPy replaced function with macro (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6422\"\u003e#6422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.2...v0.29.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/flaashok/Open-Jarvis/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/flaashok%2FOpen-Jarvis/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"}},{"old_version":"0.28.3","new_version":"0.29.0","update_type":"minor","path":null,"pr_created_at":"2026-10-01T20:33:13.000Z","version_change":"0.28.3 → 0.29.0","issue":{"uuid":"5668753905","node_id":"PR_kwDOOmxEBs8AAAABGLGZQw","number":528,"state":"closed","title":"Bump pyo3 from 0.28.3 to 0.29.0","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-10-01T23:58:37.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-01T20:33:13.000Z","updated_at":"2026-10-01T23:58:42.000Z","time_to_close":12324,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pyo3","old_version":"0.28.3","new_version":"0.29.0","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.28.3 to 0.29.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.0\u003c/h2\u003e\n\u003cp\u003eThis release is a relatively large release with improvements across many areas of PyO3's API.\u003c/p\u003e\n\u003ch3\u003eBuild and packaging changes\u003c/h3\u003e\n\u003cp\u003eThis release brings full support for Python 3.15 beta. We encourage downstream projects to begin testing and distributing Python 3.15 beta wheels so that the ecosystem can prepare for the 3.15 final release later in the year.\u003c/p\u003e\n\u003cp\u003eAlongside Python 3.15 support comes support for its new \u0026quot;abi3t\u0026quot; stable ABI which supports both free-threaded and gil-enabled Python builds. For projects distributing stable ABI wheels, we recommend distributing (for each OS/architecture) an abi3 wheel built for your minimum supported Python version, a 3.14t version-specific wheel for free-threaded Python 3.14, and an abi3t wheel to support Python 3.15 (and future versions).\u003c/p\u003e\n\u003cp\u003eSupport for Python 3.7 has been dropped. Support for Python 3.13t, the first experimental free-threaded release of CPython, has also been dropped. 3.14t (and soon 3.15t) is more stable, performant, and the starting point for CPython's own declaration of \u0026quot;support\u0026quot; for the free-threaded build.\u003c/p\u003e\n\u003cp\u003eThe PyO3 build process (via the \u003ccode\u003epyo3-build-config\u003c/code\u003e crate) has been adjusted to reduce the cost of rebuilds when the environment used to detect the Python interpreter changes; \u003ccode\u003epyo3-build-config\u003c/code\u003e and \u003ccode\u003epyo3-macros\u003c/code\u003e will no longer be rebuilt in such cases (although \u003ccode\u003epyo3-ffi\u003c/code\u003e and crates downstream of it still will be rebuilt). As a consequence the \u003ccode\u003epyo3_build_config\u003c/code\u003e APIs now require crates to have a direct dependency on \u003ccode\u003epyo3\u003c/code\u003e or \u003ccode\u003epyo3-ffi\u003c/code\u003e. We hope to continue to reduce rebuild frequency and cost in a future PyO3 release.\u003c/p\u003e\n\u003ch3\u003eSecurity updates\u003c/h3\u003e\n\u003cp\u003eWith the recent boom in AI-assisted security scanning, PyO3 has inevitably had several correctness issues exposed by AI-assisted scanning.\u003c/p\u003e\n\u003cp\u003eIn particular, PyO3 0.29 fixes two security vulnerabilities we will be releasing to the RustSec Advisory Database imminently:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMissing \u003ccode\u003eSync\u003c/code\u003e bound on \u003ccode\u003ePyCFunction::new_closure\u003c/code\u003e closures\u003c/li\u003e\n\u003cli\u003ePossible out of bounds read in \u003ccode\u003eBoundTupleIterator::nth_back\u003c/code\u003e and \u003ccode\u003eBoundListIterator::nth_back\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAny code using the above APIs is advised to update as soon as possible.\u003c/p\u003e\n\u003cp\u003eThis release also contains several other minor breaking changes to close soundness holes uncovered by AI-assisted scanning. Our assessment as maintainers was that, excluding the two vulnerability cases listed above, these correctness issues would likely have crashed immediately upon user testing rather than leading to attacker-exploitable pathways. We nevertheless wanted to see them closed without the usual deprecation cycle. These cases are noted in the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eOther major themes in this release\u003c/h3\u003e\n\u003cp\u003eNew in this release is a CLI in \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate type stubs along with the \u003ccode\u003eexperimental-inspect\u003c/code\u003e feature. Downstream, \u003ccode\u003ematurin\u003c/code\u003e has also gained support to generate type stubs using the feature. The feature is reaching a point where substantial amount of type stubs can be generated automatically. We would like to encourage users to begin using this feature and helping us find what functionality is missing, with a hope we can declare its API stable given sufficient feedback.\u003c/p\u003e\n\u003cp\u003eA substantial amount of effort has been invested in \u003ccode\u003epyo3-ffi\u003c/code\u003e as part of the process of extending it with 3.15's new APIs. There have been many missing APIs from older Python versions added. There have also been a number of fixes to incorrect definitions (these are breaking changes, but also necessary for correctness); we hope there will be far fewer such cases in the future due to more comprehensive checking added to PyO3's CI. Finally, many private CPython APIs (those with \u003ccode\u003e_Py\u003c/code\u003e underscore-named prefix) have been removed from \u003ccode\u003epyo3-ffi\u003c/code\u003e's public API.\u003c/p\u003e\n\u003ch3\u003eIn closing\u003c/h3\u003e\n\u003cp\u003eThere are also many other incremental improvements, bug fixes and smaller features; full detail can be found in the \u003ca href=\"https://pyo3.rs/v0.29.0/changelog.html\"\u003eCHANGELOG\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003ePlease consult the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e for help upgrading.\u003c/p\u003e\n\u003cp\u003eThank you to everyone who contributed code, documentation, design ideas, bug reports, and feedback. The following contributors' commits are included in this release:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Alc-Alc\"\u003e\u003ccode\u003e@​Alc-Alc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/anuraaga\"\u003e\u003ccode\u003e@​anuraaga\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/BD103\"\u003e\u003ccode\u003e@​BD103\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Cheukting\"\u003e\u003ccode\u003e@​Cheukting\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ChristopherRabotin\"\u003e\u003ccode\u003e@​ChristopherRabotin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/clin1234\"\u003e\u003ccode\u003e@​clin1234\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/codeguru42\"\u003e\u003ccode\u003e@​codeguru42\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-11\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport the new PEP 803 abi3t ABI with new \u003ccode\u003eabi3t\u003c/code\u003e and \u003ccode\u003eabi3t-py315\u003c/code\u003e features. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-macros-backend\u003c/code\u003e no longer depends on \u003ccode\u003epyo3-build-config\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5809\"\u003e#5809\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.13t (3.14t and above continue to be supported; CPython declared free-threading supported starting with Python 3.14). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5865\"\u003e#5865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.7. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5912\"\u003e#5912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExtend range of supported versions of \u003ccode\u003ehashbrown\u003c/code\u003e optional dependency to include version 0.17. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5973\"\u003e#5973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport Python 3.15.0b1. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6014\"\u003e#6014\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-ffi\u003c/code\u003e is now \u003ccode\u003eno_std\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6022\"\u003e#6022\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_traceback\u003c/code\u003e to set the traceback of an exception object. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5349\"\u003e#5349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUnicodeDecodeError::new_err_from_utf8\u003c/code\u003e to create a \u003ccode\u003ePyErr\u003c/code\u003e from a \u003ccode\u003estr::Utf8Error\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5668\"\u003e#5668\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: implement \u003ccode\u003eINPUT_TYPE\u003c/code\u003e and \u003ccode\u003eOUTPUT_TYPE\u003c/code\u003e on optional third-party crate conversions. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5770\"\u003e#5770\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: include doc comments in generated stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5782\"\u003e#5782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::PythonAbi\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiKind\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiBuilder\u003c/code\u003e, \u003ccode\u003epyo3_build_config::InterpreterConfig::target_abi\u003c/code\u003e, and \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder::target_abi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBorrowed::get\u003c/code\u003e as an equivalent to \u003ccode\u003eBound::get\u003c/code\u003e and \u003ccode\u003ePy::get\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5849\"\u003e#5849\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyFrame::new\u003c/code\u003e, \u003ccode\u003ePyTraceBack::new\u003c/code\u003e, and \u003ccode\u003ePyFrameMethods::line_number\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5857\"\u003e#5857\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUntypedBuffer::obj\u003c/code\u003e to retrieve the Python object owning the buffer. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5870\"\u003e#5870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::new_with_value\u003c/code\u003e and \u003ccode\u003ePyCapsule::new_with_value_and_destructor\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5881\"\u003e#5881\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_context\u003c/code\u003e and \u003ccode\u003ePyErr::context\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a small CLI to \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5904\"\u003e#5904\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePython::version_str\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5921\"\u003e#5921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eTryFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003ePyRef\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyRefMut\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyClassGuard\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u0026lt;T\u0026gt;\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003eBound\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePy\u0026lt;T\u0026gt;\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyDictMethods::set_default\u003c/code\u003e and \u003ccode\u003ePyDictMethods::set_default_ref\u003c/code\u003e to allow atomically setting default values in a PyDict. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5955\"\u003e#5955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003ePyFrameMethods::outer|code|var|builtins|globals|locals\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5967\"\u003e#5967\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u003c/code\u003e conversions for \u003ccode\u003ePyErr\u003c/code\u003e from \u003ccode\u003estd::time::TryFromFloatSecsError\u003c/code\u003e, \u003ccode\u003estd::time::SystemTimeError\u003c/code\u003e, \u003ccode\u003estd::path::StripPrefixError\u003c/code\u003e, \u003ccode\u003estd::env::JoinPathsError\u003c/code\u003e, \u003ccode\u003estd::char::ParseCharError\u003c/code\u003e, and \u003ccode\u003estd::char::CharTryFromError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6001\"\u003e#6001\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6034\"\u003e#6034\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::import_pointer\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6066\"\u003e#6066\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6073\"\u003e#6073\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyListMethods::get_item_unchecked\u003c/code\u003e, \u003ccode\u003ePyTupleMethods::get_item_unchecked\u003c/code\u003e, and \u003ccode\u003ePyTupleMethods::get_borrowed_item_unchecked\u003c/code\u003e on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6075\"\u003e#6075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapSuper\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6104\"\u003e#6104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e to \u003ccode\u003epyo3::prelude\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eDebug\u003c/code\u003e impls for \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnable extending \u003ccode\u003ePyDateTime\u003c/code\u003e, \u003ccode\u003ePyDate\u003c/code\u003e, \u003ccode\u003ePyTime\u003c/code\u003e, \u003ccode\u003ePyDelta\u003c/code\u003e and \u003ccode\u003ePyTzInfo\u003c/code\u003e on abi3 with python 3.12+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6115\"\u003e#6115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyFunction\u003c/code\u003e available on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6117\"\u003e#6117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFFI definitions:\n\u003cul\u003e\n\u003cli\u003eAdded FFI definitions \u003ccode\u003ePyUnstable_Object_IsUniquelyReferenced\u003c/code\u003e, \u003ccode\u003ePyUnstable_Object_IsUniquelyReferencedTemporary\u003c/code\u003e, \u003ccode\u003ePyUnstable_EnableTryIncref\u003c/code\u003e, and \u003ccode\u003ePyUnstable_TryIncref\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5828\"\u003e#5828\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003effi::PyErr_GetHandledException\u003c/code\u003e and \u003ccode\u003effi::PyErr_SetHandledException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePy_HASH_SIPHASH13\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5891\"\u003e#5891\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePyStructSequence_UnnamedField\u003c/code\u003e constant on Python 3.9 and up (or 3.11 with abi3 features). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5892\"\u003e#5892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyUnstable_InterpreterFrame_GetCode\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLasti\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLine\u003c/code\u003e, and \u003ccode\u003ePyUnstable_ExecutableKinds\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5932\"\u003e#5932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyMarshal_WriteLongToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_WriteObjectToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadLongFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadShortFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadObjectFromFile\u003c/code\u003e, and \u003ccode\u003ePyMarshal_ReadLastObjectFromFile\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5934\"\u003e#5934\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyObject_GetAIter\u003c/code\u003e, \u003ccode\u003ePyAIter_Check\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyStringWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItem\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItemString\u003c/code\u003e, \u003ccode\u003ePySequence_ITEM\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_ITEM\u003c/code\u003e, and \u003ccode\u003ePySequence_Fast_ITEMS\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5942\"\u003e#5942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ecompat::PyObject_HasAttrWithError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5944\"\u003e#5944\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyDict_SetDefault\u003c/code\u003e, \u003ccode\u003ePyDict_SetDefaultRef\u003c/code\u003e, \u003ccode\u003ePyDict_ContainsString\u003c/code\u003e, \u003ccode\u003ePyDict_Pop\u003c/code\u003e, \u003ccode\u003ePyDict_PopString\u003c/code\u003e, \u003ccode\u003ePyDict_ClearWatcher\u003c/code\u003e, \u003ccode\u003ePyDict_Watch\u003c/code\u003e, \u003ccode\u003ePyDict_Unwatch\u003c/code\u003e, and \u003ccode\u003ePyFrozenDict_New\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5947\"\u003e#5947\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\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/PyO3/pyo3/commit/0f90242785fe0ce5e4e67c1da5ed361d410dbf8c\"\u003e\u003ccode\u003e0f90242\u003c/code\u003e\u003c/a\u003e release: 0.29.0 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6107\"\u003e#6107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/cd128ed50e6fffc4e49a08c149599a3b8bd21d5b\"\u003e\u003ccode\u003ecd128ed\u003c/code\u003e\u003c/a\u003e doc: mention abi3t, python3t.dll, and abi3t_compat folder in FAQ (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6124\"\u003e#6124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/7e2ef18b939488c446c9bcc1ed550e3ce22da5bd\"\u003e\u003ccode\u003e7e2ef18\u003c/code\u003e\u003c/a\u003e Avoid type checks in methods where CPython already guarantees the received ty...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f9301990e75e9f132aa3d4bf96a98d3abfac1c04\"\u003e\u003ccode\u003ef930199\u003c/code\u003e\u003c/a\u003e docs: additional detail in migration guide for 0.29 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6123\"\u003e#6123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91ab0d1b9bf26116d1a9fd8d833c32f22259da0b\"\u003e\u003ccode\u003e91ab0d1\u003c/code\u003e\u003c/a\u003e Enable Windows abi3t tests (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6106\"\u003e#6106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/fe0fdd518fb238ebf07480fde3c54a75041a1820\"\u003e\u003ccode\u003efe0fdd5\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ePyLong*\u003c/code\u003e API (3.14+) (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6016\"\u003e#6016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f41b1dfaf4fecce0edc6417a317671bdec593d07\"\u003e\u003ccode\u003ef41b1df\u003c/code\u003e\u003c/a\u003e Hang when reattaching after detach during shutdown (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6085\"\u003e#6085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/5ae66a859c2575b2b0ce0b2982f55388561513e6\"\u003e\u003ccode\u003e5ae66a8\u003c/code\u003e\u003c/a\u003e Fix double import on RustPython (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6122\"\u003e#6122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/ad4a510dddba60ac1887800365894839f7ba5a9c\"\u003e\u003ccode\u003ead4a510\u003c/code\u003e\u003c/a\u003e PyFunction: enable some extra tests with abi3 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6118\"\u003e#6118\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c79ac0ea2d7b751ea0191b4a5462d1de8f824728\"\u003e\u003ccode\u003ec79ac0e\u003c/code\u003e\u003c/a\u003e ci: Add test for minimum supported debug build of Python (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5852\"\u003e#5852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.28.3...v0.29.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=pyo3\u0026package-manager=cargo\u0026previous-version=0.28.3\u0026new-version=0.29.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 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)\nYou can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/mongodb/kingfisher/network/alerts).\n\n\u003c/details\u003e","html_url":"https://github.com/mongodb/kingfisher/pull/528","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mongodb%2Fkingfisher/issues/528","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/528/packages"}},{"old_version":"0.27.2","new_version":"0.28.3","update_type":"minor","path":null,"pr_created_at":"2026-10-01T17:02:19.000Z","version_change":"0.27.2 → 0.28.3","issue":{"uuid":"5666009373","node_id":"PR_kwDOMOkJgc8AAAABGI3yOQ","number":87,"state":"closed","title":"chore(deps): bump the rust-dependencies group with 7 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-10-06T03:44:09.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-01T17:02:19.000Z","updated_at":"2026-10-06T03:44:11.000Z","time_to_close":384110,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"rust-dependencies","update_count":7,"packages":[{"name":"rayon","old_version":"1.11.0","new_version":"1.12.0","repository_url":"https://github.com/rayon-rs/rayon"},{"name":"thiserror","old_version":"2.0.18","new_version":"2.0.21","repository_url":"https://github.com/dtolnay/thiserror"},{"name":"rustc-hash","old_version":"2.1.1","new_version":"2.1.3","repository_url":"https://github.com/rust-lang/rustc-hash"},{"name":"pyo3","old_version":"0.27.2","new_version":"0.28.3","repository_url":"https://github.com/pyo3/pyo3"},{"name":"serde","old_version":"1.0.228","new_version":"1.0.229","repository_url":"https://github.com/serde-rs/serde"},{"name":"serde_json","old_version":"1.0.149","new_version":"1.0.151","repository_url":"https://github.com/serde-rs/json"},{"name":"pyo3-build-config","old_version":"0.27.2","new_version":"0.28.3","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the rust-dependencies group with 7 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [rayon](https://github.com/rayon-rs/rayon) | `1.11.0` | `1.12.0` |\n| [thiserror](https://github.com/dtolnay/thiserror) | `2.0.18` | `2.0.21` |\n| [rustc-hash](https://github.com/rust-lang/rustc-hash) | `2.1.1` | `2.1.3` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.27.2` | `0.28.3` |\n| [serde](https://github.com/serde-rs/serde) | `1.0.228` | `1.0.229` |\n| [serde_json](https://github.com/serde-rs/json) | `1.0.149` | `1.0.151` |\n| [pyo3-build-config](https://github.com/pyo3/pyo3) | `0.27.2` | `0.28.3` |\n\nUpdates `rayon` from 1.11.0 to 1.12.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rayon-rs/rayon/blob/main/RELEASES.md\"\u003erayon's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease rayon 1.12.0 (2026-04-13)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug in parallel \u003ccode\u003eRange\u0026lt;char\u0026gt;\u003c/code\u003e when the end is 0xE000, just past the\nsurrogate boundary, which was unsafely producing invalid \u003ccode\u003echar\u003c/code\u003e values.\u003c/li\u003e\n\u003cli\u003eThe new method \u003ccode\u003eParallelSlice::par_array_windows\u003c/code\u003e works like \u003ccode\u003epar_windows\u003c/code\u003e\nbut with a constant length, producing \u003ccode\u003e\u0026amp;[T; N]\u003c/code\u003e items.\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/rayon-rs/rayon/commit/7449d7dfede9bd1e2bde0c898b20f46db70a1ac2\"\u003e\u003ccode\u003e7449d7d\u003c/code\u003e\u003c/a\u003e Merge \u003ca href=\"https://redirect.github.com/rayon-rs/rayon/issues/1093\"\u003e#1093\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/b3d9e3f47364716f23e1bfd925b3ec710ef9710a\"\u003e\u003ccode\u003eb3d9e3f\u003c/code\u003e\u003c/a\u003e Release rayon 1.8.0 and rayon-core 1.12.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/3fe51e5cbd91b1d6ca04fb30ad80cabd8e6adefb\"\u003e\u003ccode\u003e3fe51e5\u003c/code\u003e\u003c/a\u003e Fix clippy::let_and_return\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/082f2152d26de7e6adfcdd60a052967daa523d4a\"\u003e\u003ccode\u003e082f215\u003c/code\u003e\u003c/a\u003e Merge \u003ca href=\"https://redirect.github.com/rayon-rs/rayon/issues/1087\"\u003e#1087\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/ea0c06df26029bee6adf9650660f71748c569c0e\"\u003e\u003ccode\u003eea0c06d\u003c/code\u003e\u003c/a\u003e core: registry: Factor out \u0026quot;wait till out of work\u0026quot; part of the main loop.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/75524e295767ad6543411b8d577a302c407d5fa8\"\u003e\u003ccode\u003e75524e2\u003c/code\u003e\u003c/a\u003e Merge \u003ca href=\"https://redirect.github.com/rayon-rs/rayon/issues/1063\"\u003e#1063\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/01d28003764758b6589e29cff40f8ca8d0d51797\"\u003e\u003ccode\u003e01d2800\u003c/code\u003e\u003c/a\u003e Ignore the multi-threaded test on emscripten/wasm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/40b59c0e443fc803c6b88b26fdf7a5194a19ca81\"\u003e\u003ccode\u003e40b59c0\u003c/code\u003e\u003c/a\u003e core: Make use_current_thread error rather than panic when already in the pool.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/f4db4d711e6382b13b4a7da88c0087e71a6252e5\"\u003e\u003ccode\u003ef4db4d7\u003c/code\u003e\u003c/a\u003e core: tests: Add some basic tests for ThreadPoolBuilder::use_current_thread.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rayon-rs/rayon/commit/87274ad093b354384b50e73121366b07662bad1d\"\u003e\u003ccode\u003e87274ad\u003c/code\u003e\u003c/a\u003e core: registry: Add some more documentation for ThreadPoolBuilder::use_curren...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rayon-rs/rayon/compare/rayon-core-v1.11.0...rayon-core-v1.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `thiserror` from 2.0.18 to 2.0.21\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/thiserror/releases\"\u003ethiserror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix parsing of generic unit variants in display expressions (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.20\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSuppress redundant_field_names clippy lint in generated code (\u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/454\"\u003e#454\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.19\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to syn 3\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/dtolnay/thiserror/commit/b1827ee06f81a7d7f954e676771e19a97f9f8e3b\"\u003e\u003ccode\u003eb1827ee\u003c/code\u003e\u003c/a\u003e Release 2.0.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/58037b575a2a5543d0d54a49360554325b49f55a\"\u003e\u003ccode\u003e58037b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/thiserror/issues/459\"\u003e#459\u003c/a\u003e from dtolnay/turbofish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/f82a0cf8f06c71263c2caa26e759f337d2778153\"\u003e\u003ccode\u003ef82a0cf\u003c/code\u003e\u003c/a\u003e Keep track of nested turbofish depth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72ea49262d6412ccbc08f1696dda8626409e657d\"\u003e\u003ccode\u003e72ea492\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/72eea0d4ddb17ff9fa873aa74469de850021b22e\"\u003e\u003ccode\u003e72eea0d\u003c/code\u003e\u003c/a\u003e Resolve io_other_error clippy lint in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/07f09a2ec934df58508ce4fa5e7fbf27cca552c2\"\u003e\u003ccode\u003e07f09a2\u003c/code\u003e\u003c/a\u003e Raise required compiler to Rust 1.74\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/2715388e8cc5787b3643251f7a7a637e89376688\"\u003e\u003ccode\u003e2715388\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/5a306c7d0a8588caaaaa6a7567aeb25c1c10719b\"\u003e\u003ccode\u003e5a306c7\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-09-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/ef9383b37d7c96b01e10df35d3e9e313c7b98b5a\"\u003e\u003ccode\u003eef9383b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-08-22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/thiserror/commit/8336b8407fbfe69177c504cdbc379db20cf6f131\"\u003e\u003ccode\u003e8336b84\u003c/code\u003e\u003c/a\u003e Update ui tests for version 2.0.20\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dtolnay/thiserror/compare/2.0.18...2.0.21\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rustc-hash` from 2.1.1 to 2.1.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/rustc-hash/blob/main/CHANGELOG.md\"\u003erustc-hash's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.1.3\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/pull/77\"\u003eUse derive_const to fix \u003ccode\u003efeature = \u0026quot;nightly\u0026quot;\u003c/code\u003e build\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/pull/64\"\u003eInternally update to rand 0.9\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.1.2\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/pull/65\"\u003eRefactor byte hashing to remove unreachable panic\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/rust-lang/rustc-hash/commit/c13e7ccca705e6255387a2ebc6dca142d6881621\"\u003e\u003ccode\u003ec13e7cc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/issues/78\"\u003e#78\u003c/a\u003e from Noratrieb/new-version-2-1-3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/4c3fabd983f96c2c5178512940e29a050edd07e9\"\u003e\u003ccode\u003e4c3fabd\u003c/code\u003e\u003c/a\u003e Bump to 2.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/3f1c0994892f5c592fe17192811c3b46caa108ac\"\u003e\u003ccode\u003e3f1c099\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/issues/64\"\u003e#64\u003c/a\u003e from DaniPopes/rand-0.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/07c3f48480b2d1a143fe299f5a82812b311efea6\"\u003e\u003ccode\u003e07c3f48\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/issues/77\"\u003e#77\u003c/a\u003e from DaniPopes/const-update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/cbf0baf6f900674cf88f266f96a4fa223895186b\"\u003e\u003ccode\u003ecbf0baf\u003c/code\u003e\u003c/a\u003e Use derive_const in nightly feature\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/fdb275c8a0135403067ce1c4be8e97e53c473764\"\u003e\u003ccode\u003efdb275c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/issues/67\"\u003e#67\u003c/a\u003e from Noratrieb/new-version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/acafa431e930ded0ad8c1fa8b4ca1b320f53f983\"\u003e\u003ccode\u003eacafa43\u003c/code\u003e\u003c/a\u003e Prepare 2.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/140e5253440d595822e57b4f599b45aa500dde1d\"\u003e\u003ccode\u003e140e525\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/rustc-hash/issues/65\"\u003e#65\u003c/a\u003e from morrisonlevi/split_first_chunk\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/f061387ad7da880a8bf5ce7e5c76aa863827520f\"\u003e\u003ccode\u003ef061387\u003c/code\u003e\u003c/a\u003e style: use consistent range format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/rustc-hash/commit/211455cb398aa0a6d7b12e81941d4a062af54d8e\"\u003e\u003ccode\u003e211455c\u003c/code\u003e\u003c/a\u003e refactor!: use split_first_chunk to help optimizer\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/rustc-hash/compare/v2.1.1...v2.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.27.2 to 0.28.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.28.3\u003c/h2\u003e\n\u003cp\u003eThis patch contains several fixes for stability of the PyO3 0.28.x series:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ePython::attach\u003c/code\u003e and \u003ccode\u003ePython::try_attach\u003c/code\u003e will no longer return before the thread initializing the interpreter has finished runnning \u003ccode\u003esite.py\u003c/code\u003e when using the \u003ccode\u003eauto-initialize\u003c/code\u003e feature.\u003c/li\u003e\n\u003cli\u003eFix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e when targeting the Python 3.15 prerelease interpreter.\u003c/li\u003e\n\u003cli\u003eFix possible deadlock in \u003ccode\u003e.into_pyobject()\u003c/code\u003e implementation for C-like \u003ccode\u003e#[pyclass]\u003c/code\u003e enums.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eA couple of edge cases causing compile failures were also fixed.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Embers-of-the-Fire\"\u003e\u003ccode\u003e@​Embers-of-the-Fire\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Icxolu\"\u003e\u003ccode\u003e@​Icxolu\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/maurosilber\"\u003e\u003ccode\u003e@​maurosilber\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.2\u003c/h2\u003e\n\u003cp\u003eThis patch release contains a soundness fix for subclassing native types such as \u003ccode\u003ePyList\u003c/code\u003e with the \u003ccode\u003eabi3\u003c/code\u003e feature enabled when targeting a minimum version of Python 3.12 or higher. (Support for doing such subclassing was newly added in PyO3 0.28.0.)\u003c/p\u003e\n\u003cp\u003ePyO3 0.28.0 and 0.28.1 will be yanked.\u003c/p\u003e\n\u003cp\u003eThis release also contains a correction to the FFI definition \u003ccode\u003ePyType_GetTypeDataSize\u003c/code\u003e and incorrectly-generated \u003ccode\u003e__qualname__\u003c/code\u003e on \u003ccode\u003e#[pyclass]\u003c/code\u003e enum variant types when using \u003ccode\u003e#[pyo3(name = \u0026quot;...\u0026quot;)]\u003c/code\u003e option to rename the enum and/or variant.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Icxolu\"\u003e\u003ccode\u003e@​Icxolu\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.1\u003c/h2\u003e\n\u003cp\u003eThis patch contains a number of minor compile-time fixes for PyO3 0.28.0.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/funsafemath\"\u003e\u003ccode\u003e@​funsafemath\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/rara64\"\u003e\u003ccode\u003e@​rara64\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/tdyas\"\u003e\u003ccode\u003e@​tdyas\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.0\u003c/h2\u003e\n\u003cp\u003eThis release contains many improvements across PyO3's feature set:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eProper support for \u003ccode\u003e__init__\u003c/code\u003e methods for \u003ccode\u003e#[pyclass]\u003c/code\u003e types\u003c/li\u003e\n\u003cli\u003eSupport for \u003ccode\u003e#[deleter]\u003c/code\u003es to complement the existing \u003ccode\u003e#[getter]\u003c/code\u003e and \u003ccode\u003e#[setter]\u003c/code\u003e attributes when implementing class \u0026quot;properties\u0026quot;.\u003c/li\u003e\n\u003cli\u003eSupport for subclassing many Python types with the \u003ccode\u003eabi3\u003c/code\u003e feature (requires Python 3.12+).\u003c/li\u003e\n\u003cli\u003eA new \u003ccode\u003e#[pyclass(new = \u0026quot;from_fields\u0026quot;)]\u003c/code\u003e option to automatically define the constructor from the class fields.\u003c/li\u003e\n\u003cli\u003eMany corrections to FFI definitions (including removal of many private CPython methods)\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.28.3] - 2026-04-02\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix compile error with \u003ccode\u003e#[pyclass(get_all)]\u003c/code\u003e on a type named \u003ccode\u003eProbe\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5837\"\u003e#5837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix compile error in debug builds related to \u003ccode\u003e_Py_NegativeRefcount\u003c/code\u003e with Python \u0026lt; 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5847\"\u003e#5847\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix a race condition where \u003ccode\u003ePython::attach\u003c/code\u003e or \u003ccode\u003etry_attach\u003c/code\u003e could return before \u003ccode\u003esite.py\u003c/code\u003e had finished running. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5903\"\u003e#5903\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e with Python 3.15 prerelease versions. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5907\"\u003e#5907\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deadlock in \u003ccode\u003e.into_pyobject()\u003c/code\u003e implementation for C-like \u003ccode\u003e#[pyclass]\u003c/code\u003e enums. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5928\"\u003e#5928\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.2] - 2026-02-18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix complex enum \u003ccode\u003e__qualname__\u003c/code\u003e not using python name \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5815\"\u003e#5815\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyType_GetTypeDataSize\u003c/code\u003e (was incorrectly named \u003ccode\u003ePyObject_GetTypeDataSize\u003c/code\u003e). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5819\"\u003e#5819\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix memory corruption when subclassing native types with \u003ccode\u003eabi3\u003c/code\u003e feature on Python 3.12+ (newly enabled in PyO3 0.28.0). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5823\"\u003e#5823\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.1] - 2026-02-14\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003e*args\u003c/code\u003e / \u003ccode\u003e**kwargs\u003c/code\u003e support in\u003ccode\u003e experimental-async\u003c/code\u003e feature (regressed in 0.28.0). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5771\"\u003e#5771\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::declare_interior_mutable_const\u003c/code\u003e warning inside \u003ccode\u003e#[pyclass]\u003c/code\u003e generated code on enums. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5772\"\u003e#5772\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eambiguous_associated_items\u003c/code\u003e compilation error when deriving \u003ccode\u003eFromPyObject\u003c/code\u003e or using \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e macro on enums with \u003ccode\u003eError\u003c/code\u003e variant. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5784\"\u003e#5784\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e__qualname__\u003c/code\u003e for complex \u003ccode\u003e#[pyclass]\u003c/code\u003e enum variants to include the enum name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5796\"\u003e#5796\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing \u003ccode\u003estd::sync::atomic::Ordering\u003c/code\u003e import for targets without atomic64. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5808\"\u003e#5808\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.0] - 2026-02-01\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump MSRV to Rust 1.83. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5531\"\u003e#5531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump minimum supported \u003ccode\u003equote\u003c/code\u003e version to 1.0.37. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5531\"\u003e#5531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump supported GraalPy version to 25.0. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5542\"\u003e#5542\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop \u003ccode\u003ememoffset\u003c/code\u003e dependency. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5545\"\u003e#5545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport for free-threaded Python is now opt-out rather than opt-in. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5564\"\u003e#5564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump \u003ccode\u003etarget-lexicon\u003c/code\u003e dependency to 0.13.3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5571\"\u003e#5571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop \u003ccode\u003eindoc\u003c/code\u003e and \u003ccode\u003eunindent\u003c/code\u003e dependencies. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5608\"\u003e#5608\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e__init__\u003c/code\u003e support in \u003ccode\u003e#[pymethods]\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/4951\"\u003e#4951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePySuper\u003c/code\u003e on PyPy, GraalPy and ABI3 \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/4951\"\u003e#4951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyString::from_fmt\u003c/code\u003e and \u003ccode\u003epy_format!\u003c/code\u003e macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5199\"\u003e#5199\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e#[pyclass(new = \u0026quot;from_fields\u0026quot;)]\u003c/code\u003e option. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5421\"\u003e#5421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3::buffer::PyUntypedBuffer\u003c/code\u003e, a type-erased form of \u003ccode\u003ePyBuffer\u0026lt;T\u0026gt;\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5458\"\u003e#5458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyBytes::new_with_writer\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5517\"\u003e#5517\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClass::NAME\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5579\"\u003e#5579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::add_libpython_rpath_link_args\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5624\"\u003e#5624\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/PyO3/pyo3/commit/743af645e7143be6abe2217aafaa0540cf532af4\"\u003e\u003ccode\u003e743af64\u003c/code\u003e\u003c/a\u003e release: 0.28.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/2042b4c0c1da74844f43f4970ab52386abf6deac\"\u003e\u003ccode\u003e2042b4c\u003c/code\u003e\u003c/a\u003e fix deadlock when initializing enum via \u003ccode\u003einto_pyobject()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5928\"\u003e#5928\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/01572470d031d16cd14fdc96f330397b4055f424\"\u003e\u003ccode\u003e0157247\u003c/code\u003e\u003c/a\u003e ci: update UI tests for Rust 1.94 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5859\"\u003e#5859\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/e234f8a75aaa0c0c0feecaf360107a78a7c0e436\"\u003e\u003ccode\u003ee234f8a\u003c/code\u003e\u003c/a\u003e Update getting-started.md (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5899\"\u003e#5899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c06848d5f466350efe6bd05c9fc6cd923a12dd78\"\u003e\u003ccode\u003ec06848d\u003c/code\u003e\u003c/a\u003e fix ffi-check in 3.15.0a7 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5873\"\u003e#5873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/83f4283bde6e207827edeb9422e79944ced8327c\"\u003e\u003ccode\u003e83f4283\u003c/code\u003e\u003c/a\u003e remove unused \u003ccode\u003etry_trait_v2\u003c/code\u003e feature when enabling the \u003ccode\u003enightly\u003c/code\u003e feature (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5868\"\u003e#5868\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/0de57ed453eeb47e40b011d8be2cdc0028116ebc\"\u003e\u003ccode\u003e0de57ed\u003c/code\u003e\u003c/a\u003e Fix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5907\"\u003e#5907\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/49cd13fae22c5e46a4b0946539b9e64bb8ccb573\"\u003e\u003ccode\u003e49cd13f\u003c/code\u003e\u003c/a\u003e fixes \u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5900\"\u003e#5900\u003c/a\u003e -- address race condition with initialization and site.py loading...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c90d163638ef4a754fd31a3a29e3ba2ebc05a354\"\u003e\u003ccode\u003ec90d163\u003c/code\u003e\u003c/a\u003e [fix] Fix \u003ccode\u003estd::ffi\u003c/code\u003e import for \u003ccode\u003e_Py_NegativeRefcount\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5847\"\u003e#5847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/b79d7257dd0abd9d6d029878d8f0902a8e35e695\"\u003e\u003ccode\u003eb79d725\u003c/code\u003e\u003c/a\u003e fix(pyo3-macros): allow pyclass named Probe (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5837\"\u003e#5837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.27.2...v0.28.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `serde` from 1.0.228 to 1.0.229\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/serde-rs/serde/releases\"\u003eserde's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.229\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to syn 3\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/serde-rs/serde/commit/7fc3b4c30c94f73a96ebd1553f2b090d928fc3a8\"\u003e\u003ccode\u003e7fc3b4c\u003c/code\u003e\u003c/a\u003e Release 1.0.229\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/6d6e9a11101354ce769a3438a088b6b9305c1863\"\u003e\u003ccode\u003e6d6e9a1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/serde-rs/serde/issues/3085\"\u003e#3085\u003c/a\u003e from dtolnay/syn3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/6dec3b751126c8338cac0fe8085612d695e4ecf3\"\u003e\u003ccode\u003e6dec3b7\u003c/code\u003e\u003c/a\u003e Update to syn 3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/cfe669241065984177ff63af8b45058e6e9b499d\"\u003e\u003ccode\u003ecfe6692\u003c/code\u003e\u003c/a\u003e Resolve mut_mut pedantic clippy lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/1023d077510b4aef36a41ef56fdb7798568a2654\"\u003e\u003ccode\u003e1023d07\u003c/code\u003e\u003c/a\u003e Update actions/upload-artifact@v6 -\u0026gt; v7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/dd682c2c86aa7629e77c1ccd93212d3729f4c66d\"\u003e\u003ccode\u003edd682c2\u003c/code\u003e\u003c/a\u003e Update actions/checkout@v6 -\u0026gt; v7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/5f0f18b9211732f2d82f73b5a43e4f5ff3701251\"\u003e\u003ccode\u003e5f0f18b\u003c/code\u003e\u003c/a\u003e Update ui test suite to nightly-2026-06-01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/63a1498f0e7be991ffac5939bdd202ca16e9a23f\"\u003e\u003ccode\u003e63a1498\u003c/code\u003e\u003c/a\u003e Regenerate stderr with trybuild normalization fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/fa7da4a93567ed347ad0735c28e439fca688ef26\"\u003e\u003ccode\u003efa7da4a\u003c/code\u003e\u003c/a\u003e Fix unused_features warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/serde/commit/6b1a17851ea3d86a56aa116ca1cbf428f8d5f22d\"\u003e\u003ccode\u003e6b1a178\u003c/code\u003e\u003c/a\u003e Unpin CI miri toolchain\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/serde-rs/serde/compare/v1.0.228...v1.0.229\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `serde_json` from 1.0.149 to 1.0.151\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/serde-rs/json/releases\"\u003eserde_json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.151\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd RawValue::from_string_unchecked (\u003ca href=\"https://redirect.github.com/serde-rs/json/issues/1331\"\u003e#1331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/WonderLawrence\"\u003e\u003ccode\u003e@​WonderLawrence\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.0.150\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReject non-string enum object keys (\u003ca href=\"https://redirect.github.com/serde-rs/json/issues/1324\"\u003e#1324\u003c/a\u003e, thanks \u003ca href=\"https://github.com/puneetdixit200\"\u003e\u003ccode\u003e@​puneetdixit200\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/de8500740cdcabffb9734f503e4889def823cf10\"\u003e\u003ccode\u003ede85007\u003c/code\u003e\u003c/a\u003e Release 1.0.151\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/3b2b3c5f28c20ed988bd081a4147c535e7e65c74\"\u003e\u003ccode\u003e3b2b3c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/serde-rs/json/issues/1331\"\u003e#1331\u003c/a\u003e from WonderLawrence/rawvalue-from-string-unchecked\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/0406d96860e9d8b9252e2002fa3e626ae48ca1b0\"\u003e\u003ccode\u003e0406d96\u003c/code\u003e\u003c/a\u003e Debug-assert well-formedness and no-whitespace in from_string_unchecked\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/cf16f75d81e28c723323bfc60a68fc02d2994fff\"\u003e\u003ccode\u003ecf16f75\u003c/code\u003e\u003c/a\u003e Add RawValue::from_string_unchecked\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/827a315bf2198558f0325b07bcc1e2cd973aba2f\"\u003e\u003ccode\u003e827a315\u003c/code\u003e\u003c/a\u003e Update actions/upload-artifact@v6 -\u0026gt; v7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/cea36a5c017ebffdeb95d0cd0f1aad473bfab758\"\u003e\u003ccode\u003ecea36a5\u003c/code\u003e\u003c/a\u003e Update actions/checkout@v6 -\u0026gt; v7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/a1ae73ac6a6940a4a57c673aebaa13ed4dfe3e8c\"\u003e\u003ccode\u003ea1ae73a\u003c/code\u003e\u003c/a\u003e Release 1.0.150\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/1a360b0a6c003912afc3503c834b0edd798bca28\"\u003e\u003ccode\u003e1a360b0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/serde-rs/json/issues/1324\"\u003e#1324\u003c/a\u003e from puneetdixit200/reject-non-string-enum-keys\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/2037b634f9dccbddc11cff189ebeb5854fa0e01c\"\u003e\u003ccode\u003e2037b63\u003c/code\u003e\u003c/a\u003e Reject non-string enum object keys\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/serde-rs/json/commit/5d30df60e916e9b8fc46c74794007ff271fdfbbf\"\u003e\u003ccode\u003e5d30df6\u003c/code\u003e\u003c/a\u003e Resolve manual_assert_eq pedantic clippy lint\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/serde-rs/json/compare/v1.0.149...v1.0.151\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3-build-config` from 0.27.2 to 0.28.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3-build-config's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.28.3\u003c/h2\u003e\n\u003cp\u003eThis patch contains several fixes for stability of the PyO3 0.28.x series:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ePython::attach\u003c/code\u003e and \u003ccode\u003ePython::try_attach\u003c/code\u003e will no longer return before the thread initializing the interpreter has finished runnning \u003ccode\u003esite.py\u003c/code\u003e when using the \u003ccode\u003eauto-initialize\u003c/code\u003e feature.\u003c/li\u003e\n\u003cli\u003eFix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e when targeting the Python 3.15 prerelease interpreter.\u003c/li\u003e\n\u003cli\u003eFix possible deadlock in \u003ccode\u003e.into_pyobject()\u003c/code\u003e implementation for C-like \u003ccode\u003e#[pyclass]\u003c/code\u003e enums.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eA couple of edge cases causing compile failures were also fixed.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Embers-of-the-Fire\"\u003e\u003ccode\u003e@​Embers-of-the-Fire\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Icxolu\"\u003e\u003ccode\u003e@​Icxolu\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/maurosilber\"\u003e\u003ccode\u003e@​maurosilber\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.2\u003c/h2\u003e\n\u003cp\u003eThis patch release contains a soundness fix for subclassing native types such as \u003ccode\u003ePyList\u003c/code\u003e with the \u003ccode\u003eabi3\u003c/code\u003e feature enabled when targeting a minimum version of Python 3.12 or higher. (Support for doing such subclassing was newly added in PyO3 0.28.0.)\u003c/p\u003e\n\u003cp\u003ePyO3 0.28.0 and 0.28.1 will be yanked.\u003c/p\u003e\n\u003cp\u003eThis release also contains a correction to the FFI definition \u003ccode\u003ePyType_GetTypeDataSize\u003c/code\u003e and incorrectly-generated \u003ccode\u003e__qualname__\u003c/code\u003e on \u003ccode\u003e#[pyclass]\u003c/code\u003e enum variant types when using \u003ccode\u003e#[pyo3(name = \u0026quot;...\u0026quot;)]\u003c/code\u003e option to rename the enum and/or variant.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Icxolu\"\u003e\u003ccode\u003e@​Icxolu\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.1\u003c/h2\u003e\n\u003cp\u003eThis patch contains a number of minor compile-time fixes for PyO3 0.28.0.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/funsafemath\"\u003e\u003ccode\u003e@​funsafemath\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/rara64\"\u003e\u003ccode\u003e@​rara64\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/tdyas\"\u003e\u003ccode\u003e@​tdyas\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.28.0\u003c/h2\u003e\n\u003cp\u003eThis release contains many improvements across PyO3's feature set:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eProper support for \u003ccode\u003e__init__\u003c/code\u003e methods for \u003ccode\u003e#[pyclass]\u003c/code\u003e types\u003c/li\u003e\n\u003cli\u003eSupport for \u003ccode\u003e#[deleter]\u003c/code\u003es to complement the existing \u003ccode\u003e#[getter]\u003c/code\u003e and \u003ccode\u003e#[setter]\u003c/code\u003e attributes when implementing class \u0026quot;properties\u0026quot;.\u003c/li\u003e\n\u003cli\u003eSupport for subclassing many Python types with the \u003ccode\u003eabi3\u003c/code\u003e feature (requires Python 3.12+).\u003c/li\u003e\n\u003cli\u003eA new \u003ccode\u003e#[pyclass(new = \u0026quot;from_fields\u0026quot;)]\u003c/code\u003e option to automatically define the constructor from the class fields.\u003c/li\u003e\n\u003cli\u003eMany corrections to FFI definitions (including removal of many private CPython methods)\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3-build-config's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.28.3] - 2026-04-02\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix compile error with \u003ccode\u003e#[pyclass(get_all)]\u003c/code\u003e on a type named \u003ccode\u003eProbe\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5837\"\u003e#5837\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix compile error in debug builds related to \u003ccode\u003e_Py_NegativeRefcount\u003c/code\u003e with Python \u0026lt; 3.12. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5847\"\u003e#5847\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix a race condition where \u003ccode\u003ePython::attach\u003c/code\u003e or \u003ccode\u003etry_attach\u003c/code\u003e could return before \u003ccode\u003esite.py\u003c/code\u003e had finished running. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5903\"\u003e#5903\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e with Python 3.15 prerelease versions. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5907\"\u003e#5907\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deadlock in \u003ccode\u003e.into_pyobject()\u003c/code\u003e implementation for C-like \u003ccode\u003e#[pyclass]\u003c/code\u003e enums. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5928\"\u003e#5928\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.2] - 2026-02-18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix complex enum \u003ccode\u003e__qualname__\u003c/code\u003e not using python name \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5815\"\u003e#5815\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definition \u003ccode\u003ePyType_GetTypeDataSize\u003c/code\u003e (was incorrectly named \u003ccode\u003ePyObject_GetTypeDataSize\u003c/code\u003e). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5819\"\u003e#5819\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix memory corruption when subclassing native types with \u003ccode\u003eabi3\u003c/code\u003e feature on Python 3.12+ (newly enabled in PyO3 0.28.0). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5823\"\u003e#5823\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.1] - 2026-02-14\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003e*args\u003c/code\u003e / \u003ccode\u003e**kwargs\u003c/code\u003e support in\u003ccode\u003e experimental-async\u003c/code\u003e feature (regressed in 0.28.0). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5771\"\u003e#5771\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eclippy::declare_interior_mutable_const\u003c/code\u003e warning inside \u003ccode\u003e#[pyclass]\u003c/code\u003e generated code on enums. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5772\"\u003e#5772\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eambiguous_associated_items\u003c/code\u003e compilation error when deriving \u003ccode\u003eFromPyObject\u003c/code\u003e or using \u003ccode\u003e#[pyclass(from_py_object)]\u003c/code\u003e macro on enums with \u003ccode\u003eError\u003c/code\u003e variant. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5784\"\u003e#5784\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e__qualname__\u003c/code\u003e for complex \u003ccode\u003e#[pyclass]\u003c/code\u003e enum variants to include the enum name. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5796\"\u003e#5796\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing \u003ccode\u003estd::sync::atomic::Ordering\u003c/code\u003e import for targets without atomic64. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5808\"\u003e#5808\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.28.0] - 2026-02-01\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump MSRV to Rust 1.83. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5531\"\u003e#5531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump minimum supported \u003ccode\u003equote\u003c/code\u003e version to 1.0.37. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5531\"\u003e#5531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump supported GraalPy version to 25.0. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5542\"\u003e#5542\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop \u003ccode\u003ememoffset\u003c/code\u003e dependency. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5545\"\u003e#5545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport for free-threaded Python is now opt-out rather than opt-in. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5564\"\u003e#5564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump \u003ccode\u003etarget-lexicon\u003c/code\u003e dependency to 0.13.3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5571\"\u003e#5571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop \u003ccode\u003eindoc\u003c/code\u003e and \u003ccode\u003eunindent\u003c/code\u003e dependencies. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5608\"\u003e#5608\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e__init__\u003c/code\u003e support in \u003ccode\u003e#[pymethods]\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/4951\"\u003e#4951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePySuper\u003c/code\u003e on PyPy, GraalPy and ABI3 \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/4951\"\u003e#4951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyString::from_fmt\u003c/code\u003e and \u003ccode\u003epy_format!\u003c/code\u003e macro. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5199\"\u003e#5199\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e#[pyclass(new = \u0026quot;from_fields\u0026quot;)]\u003c/code\u003e option. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5421\"\u003e#5421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3::buffer::PyUntypedBuffer\u003c/code\u003e, a type-erased form of \u003ccode\u003ePyBuffer\u0026lt;T\u0026gt;\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5458\"\u003e#5458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyBytes::new_with_writer\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5517\"\u003e#5517\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClass::NAME\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5579\"\u003e#5579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::add_libpython_rpath_link_args\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5624\"\u003e#5624\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/PyO3/pyo3/commit/743af645e7143be6abe2217aafaa0540cf532af4\"\u003e\u003ccode\u003e743af64\u003c/code\u003e\u003c/a\u003e release: 0.28.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/2042b4c0c1da74844f43f4970ab52386abf6deac\"\u003e\u003ccode\u003e2042b4c\u003c/code\u003e\u003c/a\u003e fix deadlock when initializing enum via \u003ccode\u003einto_pyobject()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5928\"\u003e#5928\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/01572470d031d16cd14fdc96f330397b4055f424\"\u003e\u003ccode\u003e0157247\u003c/code\u003e\u003c/a\u003e ci: update UI tests for Rust 1.94 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5859\"\u003e#5859\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/e234f8a75aaa0c0c0feecaf360107a78a7c0e436\"\u003e\u003ccode\u003ee234f8a\u003c/code\u003e\u003c/a\u003e Update getting-started.md (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5899\"\u003e#5899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c06848d5f466350efe6bd05c9fc6cd923a12dd78\"\u003e\u003ccode\u003ec06848d\u003c/code\u003e\u003c/a\u003e fix ffi-check in 3.15.0a7 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5873\"\u003e#5873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/83f4283bde6e207827edeb9422e79944ced8327c\"\u003e\u003ccode\u003e83f4283\u003c/code\u003e\u003c/a\u003e remove unused \u003ccode\u003etry_trait_v2\u003c/code\u003e feature when enabling the \u003ccode\u003enightly\u003c/code\u003e feature (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5868\"\u003e#5868\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/0de57ed453eeb47e40b011d8be2cdc0028116ebc\"\u003e\u003ccode\u003e0de57ed\u003c/code\u003e\u003c/a\u003e Fix unsoundness in \u003ccode\u003ePyBytesWriter::write_vectored\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5907\"\u003e#5907\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/49cd13fae22c5e46a4b0946539b9e64bb8ccb573\"\u003e\u003ccode\u003e49cd13f\u003c/code\u003e\u003c/a\u003e fixes \u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5900\"\u003e#5900\u003c/a\u003e -- address race condition with initialization and site.py loading...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c90d163638ef4a754fd31a3a29e3ba2ebc05a354\"\u003e\u003ccode\u003ec90d163\u003c/code\u003e\u003c/a\u003e [fix] Fix \u003ccode\u003estd::ffi\u003c/code\u003e import for \u003ccode\u003e_Py_NegativeRefcount\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5847\"\u003e#5847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/b79d7257dd0abd9d6d029878d8f0902a8e35e695\"\u003e\u003ccode\u003eb79d725\u003c/code\u003e\u003c/a\u003e fix(pyo3-macros): allow pyclass named Probe (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5837\"\u003e#5837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.27.2...v0.28.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/PyDataBlog/simstring_rs/pull/87","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyDataBlog%2Fsimstring_rs/issues/87","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/87/packages"}},{"old_version":"0.29.0","new_version":"0.29.2","update_type":"patch","path":null,"pr_created_at":"2026-10-01T04:46:14.000Z","version_change":"0.29.0 → 0.29.2","issue":{"uuid":"5657112035","node_id":"PR_kwDOD80FKM8AAAABGBux8w","number":943,"state":"closed","title":"chore: bump pyo3 from 0.29.0 to 0.29.2","user":"dependabot[bot]","labels":["dependabot"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-10-01T04:52:58.000Z","author_association":null,"state_reason":null,"created_at":"2026-10-01T04:46:14.000Z","updated_at":"2026-10-01T04:53:38.000Z","time_to_close":404,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore","packages":[{"name":"pyo3","old_version":"0.29.0","new_version":"0.29.2","repository_url":"https://github.com/pyo3/pyo3"}],"path":null,"ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.29.0 to 0.29.2.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.2\u003c/h2\u003e\n\u003cp\u003eThis patch fixes a regression in PyO3 0.29.1 which broke PyPy 3.11 compatibility (\u003ccode\u003e#[pyclass]\u003c/code\u003e types would crash PyPy on instance deletion).\u003c/p\u003e\n\u003cp\u003eA few further fixes have also landed with similar themes to PyO3 0.29.1: fixes to minor reference counting bugs, rough edges which would cause crashes, issues which would cause failed builds, and fixes to \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation.\u003c/p\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/ImFeH2\"\u003e\u003ccode\u003e@​ImFeH2\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Tpt\"\u003e\u003ccode\u003e@​Tpt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/WaterWhisperer\"\u003e\u003ccode\u003e@​WaterWhisperer\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePyO3 0.29.1\u003c/h2\u003e\n\u003cp\u003eThis patch is a stack of fixes for PyO3 0.29. Particular themes include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixes addressing build failures with newer interpreters such as GraalPy 3.13 and CPython 3.15\u003c/li\u003e\n\u003cli\u003eFixes resolving potential memory leaks inside \u003ccode\u003e#[pyclass]\u003c/code\u003e implementation internals\u003c/li\u003e\n\u003cli\u003eFixes to the new \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub machinery\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor a full list of the fixes in these above themes and more, please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/exg\"\u003e\u003ccode\u003e@​exg\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ImFeH2\"\u003e\u003ccode\u003e@​ImFeH2\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/IvanIsCoding\"\u003e\u003ccode\u003e@​IvanIsCoding\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/jonasdedden\"\u003e\u003ccode\u003e@​jonasdedden\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/MatthieuDartiailh\"\u003e\u003ccode\u003e@​MatthieuDartiailh\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/msimacek\"\u003e\u003ccode\u003e@​msimacek\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ngoldbaum\"\u003e\u003ccode\u003e@​ngoldbaum\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Person-93\"\u003e\u003ccode\u003e@​Person-93\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ratazzi\"\u003e\u003ccode\u003e@​ratazzi\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/rewitt94\"\u003e\u003ccode\u003e@​rewitt94\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/scott-griffiths\"\u003e\u003ccode\u003e@​scott-griffiths\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ShiroKSH\"\u003e\u003ccode\u003e@​ShiroKSH\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/tobni\"\u003e\u003ccode\u003e@​tobni\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Tpt\"\u003e\u003ccode\u003e@​Tpt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/WaterWhisperer\"\u003e\u003ccode\u003e@​WaterWhisperer\u003c/code\u003e\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/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.2] - 2026-08-05\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePYO3_USE_RAW_DYLIB=0\u003c/code\u003e opt-out of \u003ccode\u003eraw-dylib\u003c/code\u003e linking for Windows. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6185\"\u003e#6185\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyO3 0.29 regression with failure to link under Cygwin / MSYS2. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6185\"\u003e#6185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix stubs generation for field getters (\u003ccode\u003e#[pyo3(get)]\u003c/code\u003e) when \u003ccode\u003eIntoPyObject\u003c/code\u003e is only implemented on references of the field type. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6276\"\u003e#6276\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e#[classmethod]\u003c/code\u003e magic methods receiving the instance instead of its type when invoked through a type slot. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6283\"\u003e#6283\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003epyo3_build_config::add_libpython_rpath_link_args\u003c/code\u003e emitting Unix-style rpath linker arguments on Windows and Cygwin. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6284\"\u003e#6284\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix PyO3 0.29.1 regression on PyPy causing crashes when deallocating \u003ccode\u003e#[pyclass]\u003c/code\u003e instances. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6294\"\u003e#6294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing trailing nul in Python 3.9 \u003ccode\u003e#[pyclass]\u003c/code\u003e docstrings. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6296\"\u003e#6296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix reference count leak of \u003ccode\u003e#[classattr]\u003c/code\u003e values created from \u003ccode\u003efn\u003c/code\u003e items. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6297\"\u003e#6297\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.29.1] - 2026-08-02\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse the inline definition of \u003ccode\u003ePy_TYPE\u003c/code\u003e in the unlimited API on 3.14+ \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6179\"\u003e#6179\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect pointer arithmetic in FFI definitions \u003ccode\u003ePyObject_GET_WEAKREFS_LISTPTR\u003c/code\u003e and \u003ccode\u003ePyHeapType_GET_MEMBERS\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6145\"\u003e#6145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix compilation error with \u003ccode\u003enightly\u003c/code\u003e feature on PyPy and GraalPy due to \u003ccode\u003e!Ungil\u003c/code\u003e implementations for FFI types not available on those platforms. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6146\"\u003e#6146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eappend_to_inittab\u003c/code\u003e and \u003ccode\u003ePyInit_\u0026lt;module\u0026gt;\u003c/code\u003e internal module definition corruption on 32-bit and big-endian platforms on Python 3.15+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6150\"\u003e#6150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix return value of \u003ccode\u003ePyClassGuardMutSuper::as_super\u003c/code\u003e being scoped to the full guard lifetime, now the \u003ccode\u003e\u0026amp;mut\u003c/code\u003e borrow of the \u003ccode\u003eas_super()\u003c/code\u003e call. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6181\"\u003e#6181\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix builds for free-threaded interpreters older than 3.15 erroring with \u0026quot;cannot set a minimum Python version\u0026quot; when an \u003ccode\u003eabi3t-py3*\u003c/code\u003e feature is enabled and the configuration comes from \u003ccode\u003ePYO3_CONFIG_FILE\u003c/code\u003e, sysconfigdata or cross-compilation defaults. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6192\"\u003e#6192\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix a memory leak when deallocating \u003ccode\u003e#[pyclass(dict)]\u003c/code\u003e instances with a populated \u003ccode\u003e__dict__\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6198\"\u003e#6198\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix an abort inside a \u003ccode\u003e#[pyclass]\u003c/code\u003e's GC traversal when the traversal is stopped early. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6206\"\u003e#6206\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix reference cycles through the \u003ccode\u003e__dict__\u003c/code\u003e of a \u003ccode\u003e#[pyclass(dict)]\u003c/code\u003e never being collected. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6206\"\u003e#6206\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix building on GraalPy 3.13. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6208\"\u003e#6208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix reference count leak of references to \u003ccode\u003e#[pyclass]\u003c/code\u003e type objects held by their instances on instance deallocation. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6224\"\u003e#6224\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix FFI definitions \u003ccode\u003ePyByteArray_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePyList_GET_SIZE\u003c/code\u003e, and \u003ccode\u003ePySet_GET_SIZE\u003c/code\u003e to use an atomic load for free-threaded Python. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6230\"\u003e#6230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix a memory leak on Python 3.11 and 3.12 where creating an instance of a \u003ccode\u003e#[pyclass(dict)]\u003c/code\u003e class leaked one empty dict per instance. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6234\"\u003e#6234\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stubs to emit the arguments of many magic methods as positional-only to match runtime behavior, rather than positional-or-keyword. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6239\"\u003e#6239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stubs to emit the Python name rather than the Rust name for \u003ccode\u003e#[pyfunction(name = \u0026quot;...\u0026quot;)]\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6254\"\u003e#6254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexperimental-inspect\u003c/code\u003e generating invalid internal JSON when \u003ccode\u003e#[pymodule]\u003c/code\u003e members are gated by \u003ccode\u003e#[cfg]\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6255\"\u003e#6255\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e__inplace_concat__\u003c/code\u003e and \u003ccode\u003e__inplace_repeat__\u003c/code\u003e overriding \u003ccode\u003e__concat__\u003c/code\u003e and \u003ccode\u003e__repeat__\u003c/code\u003e when both were defined. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6260\"\u003e#6260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix conversion of out-of-range \u003ccode\u003etime::Duration\u003c/code\u003e values to return \u003ccode\u003eOverflowError\u003c/code\u003e instead of panicking. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6266\"\u003e#6266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stubs padding blank lines inside indented docstrings. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6270\"\u003e#6270\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/PyO3/pyo3/commit/a70d17f898df41b3d1632ee987f624f5222d8d39\"\u003e\u003ccode\u003ea70d17f\u003c/code\u003e\u003c/a\u003e release: 0.29.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/bd00e11864e2c21469285e9f80da734eaf15f412\"\u003e\u003ccode\u003ebd00e11\u003c/code\u003e\u003c/a\u003e fix backports.zoneinfo for uv install\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/7cbd144fd91b9c3f7fcb443965db33e196f41378\"\u003e\u003ccode\u003e7cbd144\u003c/code\u003e\u003c/a\u003e fix double-decref in PyPy in instance dealloc (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6294\"\u003e#6294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/e57fb6f5ac3308fc929e3416b006414423fcb3bb\"\u003e\u003ccode\u003ee57fb6f\u003c/code\u003e\u003c/a\u003e fix missing trailing nul on Python 3.9 \u003ccode\u003e#[pyclass]\u003c/code\u003e docstrings (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6296\"\u003e#6296\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/d83693c7d75e1d379e1c38934bdd094f35bfe6b6\"\u003e\u003ccode\u003ed83693c\u003c/code\u003e\u003c/a\u003e fix refcount leak in \u003ccode\u003einitialize_tp_dict\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6297\"\u003e#6297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/48ebbd86a6e7106916a47253730d26aaf76928f4\"\u003e\u003ccode\u003e48ebbd8\u003c/code\u003e\u003c/a\u003e fix: skip libpython rpath args on Windows and Cygwin (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6284\"\u003e#6284\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/bd73377d4fea3d72f64760d60756b8a23a7cb097\"\u003e\u003ccode\u003ebd73377\u003c/code\u003e\u003c/a\u003e fix: pass class to classmethod magic methods (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6283\"\u003e#6283\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/af8d149449f7b9a065bf0e9a5d00b71a2863d555\"\u003e\u003ccode\u003eaf8d149\u003c/code\u003e\u003c/a\u003e Restore pyo3-introspection license files (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6289\"\u003e#6289\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/0120c59140c9e9fb55aa3160dd45d1c6399a5b8b\"\u003e\u003ccode\u003e0120c59\u003c/code\u003e\u003c/a\u003e unblock CI via a uv constraint (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6295\"\u003e#6295\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/3161efcb222e3cb3ecf7c4ab29f7ad3f7a42ec70\"\u003e\u003ccode\u003e3161efc\u003c/code\u003e\u003c/a\u003e build(deps): bump CodSpeedHQ/action from 4 to 5.0.1 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6286\"\u003e#6286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.29.0...v0.29.2\"\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=pyo3\u0026package-manager=cargo\u0026previous-version=0.29.0\u0026new-version=0.29.2)](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 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/polarmutex/beancount-language-server/pull/943","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/polarmutex%2Fbeancount-language-server/issues/943","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/943/packages"}},{"old_version":"0.27.2","new_version":"0.29.0","update_type":"minor","path":"/native/pyside6_webusb_accel","pr_created_at":"2026-09-24T21:19:06.000Z","version_change":"0.27.2 → 0.29.0","issue":{"uuid":"5574695454","node_id":"PR_kwDOTiwXhc8AAAABFApXgA","number":2,"state":"closed","title":"Bump pyo3 from 0.27.2 to 0.29.0 in /native/pyside6_webusb_accel","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-09-26T01:18:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-24T21:19:06.000Z","updated_at":"2026-09-26T01:18:52.000Z","time_to_close":100785,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pyo3","old_version":"0.27.2","new_version":"0.29.0","repository_url":"https://github.com/pyo3/pyo3"}],"path":"/native/pyside6_webusb_accel","ecosystem":"cargo"},"body":"Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.27.2 to 0.29.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.0\u003c/h2\u003e\n\u003cp\u003eThis release is a relatively large release with improvements across many areas of PyO3's API.\u003c/p\u003e\n\u003ch3\u003eBuild and packaging changes\u003c/h3\u003e\n\u003cp\u003eThis release brings full support for Python 3.15 beta. We encourage downstream projects to begin testing and distributing Python 3.15 beta wheels so that the ecosystem can prepare for the 3.15 final release later in the year.\u003c/p\u003e\n\u003cp\u003eAlongside Python 3.15 support comes support for its new \u0026quot;abi3t\u0026quot; stable ABI which supports both free-threaded and gil-enabled Python builds. For projects distributing stable ABI wheels, we recommend distributing (for each OS/architecture) an abi3 wheel built for your minimum supported Python version, a 3.14t version-specific wheel for free-threaded Python 3.14, and an abi3t wheel to support Python 3.15 (and future versions).\u003c/p\u003e\n\u003cp\u003eSupport for Python 3.7 has been dropped. Support for Python 3.13t, the first experimental free-threaded release of CPython, has also been dropped. 3.14t (and soon 3.15t) is more stable, performant, and the starting point for CPython's own declaration of \u0026quot;support\u0026quot; for the free-threaded build.\u003c/p\u003e\n\u003cp\u003eThe PyO3 build process (via the \u003ccode\u003epyo3-build-config\u003c/code\u003e crate) has been adjusted to reduce the cost of rebuilds when the environment used to detect the Python interpreter changes; \u003ccode\u003epyo3-build-config\u003c/code\u003e and \u003ccode\u003epyo3-macros\u003c/code\u003e will no longer be rebuilt in such cases (although \u003ccode\u003epyo3-ffi\u003c/code\u003e and crates downstream of it still will be rebuilt). As a consequence the \u003ccode\u003epyo3_build_config\u003c/code\u003e APIs now require crates to have a direct dependency on \u003ccode\u003epyo3\u003c/code\u003e or \u003ccode\u003epyo3-ffi\u003c/code\u003e. We hope to continue to reduce rebuild frequency and cost in a future PyO3 release.\u003c/p\u003e\n\u003ch3\u003eSecurity updates\u003c/h3\u003e\n\u003cp\u003eWith the recent boom in AI-assisted security scanning, PyO3 has inevitably had several correctness issues exposed by AI-assisted scanning.\u003c/p\u003e\n\u003cp\u003eIn particular, PyO3 0.29 fixes two security vulnerabilities we will be releasing to the RustSec Advisory Database imminently:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMissing \u003ccode\u003eSync\u003c/code\u003e bound on \u003ccode\u003ePyCFunction::new_closure\u003c/code\u003e closures\u003c/li\u003e\n\u003cli\u003ePossible out of bounds read in \u003ccode\u003eBoundTupleIterator::nth_back\u003c/code\u003e and \u003ccode\u003eBoundListIterator::nth_back\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAny code using the above APIs is advised to update as soon as possible.\u003c/p\u003e\n\u003cp\u003eThis release also contains several other minor breaking changes to close soundness holes uncovered by AI-assisted scanning. Our assessment as maintainers was that, excluding the two vulnerability cases listed above, these correctness issues would likely have crashed immediately upon user testing rather than leading to attacker-exploitable pathways. We nevertheless wanted to see them closed without the usual deprecation cycle. These cases are noted in the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eOther major themes in this release\u003c/h3\u003e\n\u003cp\u003eNew in this release is a CLI in \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate type stubs along with the \u003ccode\u003eexperimental-inspect\u003c/code\u003e feature. Downstream, \u003ccode\u003ematurin\u003c/code\u003e has also gained support to generate type stubs using the feature. The feature is reaching a point where substantial amount of type stubs can be generated automatically. We would like to encourage users to begin using this feature and helping us find what functionality is missing, with a hope we can declare its API stable given sufficient feedback.\u003c/p\u003e\n\u003cp\u003eA substantial amount of effort has been invested in \u003ccode\u003epyo3-ffi\u003c/code\u003e as part of the process of extending it with 3.15's new APIs. There have been many missing APIs from older Python versions added. There have also been a number of fixes to incorrect definitions (these are breaking changes, but also necessary for correctness); we hope there will be far fewer such cases in the future due to more comprehensive checking added to PyO3's CI. Finally, many private CPython APIs (those with \u003ccode\u003e_Py\u003c/code\u003e underscore-named prefix) have been removed from \u003ccode\u003epyo3-ffi\u003c/code\u003e's public API.\u003c/p\u003e\n\u003ch3\u003eIn closing\u003c/h3\u003e\n\u003cp\u003eThere are also many other incremental improvements, bug fixes and smaller features; full detail can be found in the \u003ca href=\"https://pyo3.rs/v0.29.0/changelog.html\"\u003eCHANGELOG\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003ePlease consult the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e for help upgrading.\u003c/p\u003e\n\u003cp\u003eThank you to everyone who contributed code, documentation, design ideas, bug reports, and feedback. The following contributors' commits are included in this release:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Alc-Alc\"\u003e\u003ccode\u003e@​Alc-Alc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/anuraaga\"\u003e\u003ccode\u003e@​anuraaga\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/BD103\"\u003e\u003ccode\u003e@​BD103\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Cheukting\"\u003e\u003ccode\u003e@​Cheukting\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ChristopherRabotin\"\u003e\u003ccode\u003e@​ChristopherRabotin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/clin1234\"\u003e\u003ccode\u003e@​clin1234\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/codeguru42\"\u003e\u003ccode\u003e@​codeguru42\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-11\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport the new PEP 803 abi3t ABI with new \u003ccode\u003eabi3t\u003c/code\u003e and \u003ccode\u003eabi3t-py315\u003c/code\u003e features. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-macros-backend\u003c/code\u003e no longer depends on \u003ccode\u003epyo3-build-config\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5809\"\u003e#5809\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.13t (3.14t and above continue to be supported; CPython declared free-threading supported starting with Python 3.14). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5865\"\u003e#5865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.7. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5912\"\u003e#5912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExtend range of supported versions of \u003ccode\u003ehashbrown\u003c/code\u003e optional dependency to include version 0.17. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5973\"\u003e#5973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport Python 3.15.0b1. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6014\"\u003e#6014\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-ffi\u003c/code\u003e is now \u003ccode\u003eno_std\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6022\"\u003e#6022\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_traceback\u003c/code\u003e to set the traceback of an exception object. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5349\"\u003e#5349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUnicodeDecodeError::new_err_from_utf8\u003c/code\u003e to create a \u003ccode\u003ePyErr\u003c/code\u003e from a \u003ccode\u003estr::Utf8Error\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5668\"\u003e#5668\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: implement \u003ccode\u003eINPUT_TYPE\u003c/code\u003e and \u003ccode\u003eOUTPUT_TYPE\u003c/code\u003e on optional third-party crate conversions. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5770\"\u003e#5770\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: include doc comments in generated stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5782\"\u003e#5782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::PythonAbi\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiKind\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiBuilder\u003c/code\u003e, \u003ccode\u003epyo3_build_config::InterpreterConfig::target_abi\u003c/code\u003e, and \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder::target_abi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBorrowed::get\u003c/code\u003e as an equivalent to \u003ccode\u003eBound::get\u003c/code\u003e and \u003ccode\u003ePy::get\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5849\"\u003e#5849\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyFrame::new\u003c/code\u003e, \u003ccode\u003ePyTraceBack::new\u003c/code\u003e, and \u003ccode\u003ePyFrameMethods::line_number\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5857\"\u003e#5857\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUntypedBuffer::obj\u003c/code\u003e to retrieve the Python object owning the buffer. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5870\"\u003e#5870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::new_with_value\u003c/code\u003e and \u003ccode\u003ePyCapsule::new_with_value_and_destructor\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5881\"\u003e#5881\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_context\u003c/code\u003e and \u003ccode\u003ePyErr::context\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a small CLI to \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5904\"\u003e#5904\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePython::version_str\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5921\"\u003e#5921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eTryFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003ePyRef\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyRefMut\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyClassGuard\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u0026lt;T\u0026gt;\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003eBound\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePy\u0026lt;T\u0026gt;\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyDictMethods::set_default\u003c/code\u003e and \u003ccode\u003ePyDictMethods::set_default_ref\u003c/code\u003e to allow atomically setting default values in a PyDict. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5955\"\u003e#5955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003ePyFrameMethods::outer|code|var|builtins|globals|locals\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5967\"\u003e#5967\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u003c/code\u003e conversions for \u003ccode\u003ePyErr\u003c/code\u003e from \u003ccode\u003estd::time::TryFromFloatSecsError\u003c/code\u003e, \u003ccode\u003estd::time::SystemTimeError\u003c/code\u003e, \u003ccode\u003estd::path::StripPrefixError\u003c/code\u003e, \u003ccode\u003estd::env::JoinPathsError\u003c/code\u003e, \u003ccode\u003estd::char::ParseCharError\u003c/code\u003e, and \u003ccode\u003estd::char::CharTryFromError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6001\"\u003e#6001\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6034\"\u003e#6034\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::import_pointer\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6066\"\u003e#6066\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6073\"\u003e#6073\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyListMethods::get_item_unchecked\u003c/code\u003e, \u003ccode\u003ePyTupleMethods::get_item_unchecked\u003c/code\u003e, and \u003ccode\u003ePyTupleMethods::get_borrowed_item_unchecked\u003c/code\u003e on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6075\"\u003e#6075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapSuper\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6104\"\u003e#6104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e to \u003ccode\u003epyo3::prelude\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eDebug\u003c/code\u003e impls for \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnable extending \u003ccode\u003ePyDateTime\u003c/code\u003e, \u003ccode\u003ePyDate\u003c/code\u003e, \u003ccode\u003ePyTime\u003c/code\u003e, \u003ccode\u003ePyDelta\u003c/code\u003e and \u003ccode\u003ePyTzInfo\u003c/code\u003e on abi3 with python 3.12+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6115\"\u003e#6115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyFunction\u003c/code\u003e available on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6117\"\u003e#6117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFFI definitions:\n\u003cul\u003e\n\u003cli\u003eAdded FFI definitions \u003ccode\u003ePyUnstable_Object_IsUniquelyReferenced\u003c/code\u003e, \u003ccode\u003ePyUnstable_Object_IsUniquelyReferencedTemporary\u003c/code\u003e, \u003ccode\u003ePyUnstable_EnableTryIncref\u003c/code\u003e, and \u003ccode\u003ePyUnstable_TryIncref\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5828\"\u003e#5828\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003effi::PyErr_GetHandledException\u003c/code\u003e and \u003ccode\u003effi::PyErr_SetHandledException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePy_HASH_SIPHASH13\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5891\"\u003e#5891\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePyStructSequence_UnnamedField\u003c/code\u003e constant on Python 3.9 and up (or 3.11 with abi3 features). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5892\"\u003e#5892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyUnstable_InterpreterFrame_GetCode\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLasti\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLine\u003c/code\u003e, and \u003ccode\u003ePyUnstable_ExecutableKinds\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5932\"\u003e#5932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyMarshal_WriteLongToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_WriteObjectToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadLongFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadShortFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadObjectFromFile\u003c/code\u003e, and \u003ccode\u003ePyMarshal_ReadLastObjectFromFile\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5934\"\u003e#5934\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyObject_GetAIter\u003c/code\u003e, \u003ccode\u003ePyAIter_Check\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyStringWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItem\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItemString\u003c/code\u003e, \u003ccode\u003ePySequence_ITEM\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_ITEM\u003c/code\u003e, and \u003ccode\u003ePySequence_Fast_ITEMS\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5942\"\u003e#5942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ecompat::PyObject_HasAttrWithError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5944\"\u003e#5944\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyDict_SetDefault\u003c/code\u003e, \u003ccode\u003ePyDict_SetDefaultRef\u003c/code\u003e, \u003ccode\u003ePyDict_ContainsString\u003c/code\u003e, \u003ccode\u003ePyDict_Pop\u003c/code\u003e, \u003ccode\u003ePyDict_PopString\u003c/code\u003e, \u003ccode\u003ePyDict_ClearWatcher\u003c/code\u003e, \u003ccode\u003ePyDict_Watch\u003c/code\u003e, \u003ccode\u003ePyDict_Unwatch\u003c/code\u003e, and \u003ccode\u003ePyFrozenDict_New\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5947\"\u003e#5947\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\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/PyO3/pyo3/commit/0f90242785fe0ce5e4e67c1da5ed361d410dbf8c\"\u003e\u003ccode\u003e0f90242\u003c/code\u003e\u003c/a\u003e release: 0.29.0 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6107\"\u003e#6107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/cd128ed50e6fffc4e49a08c149599a3b8bd21d5b\"\u003e\u003ccode\u003ecd128ed\u003c/code\u003e\u003c/a\u003e doc: mention abi3t, python3t.dll, and abi3t_compat folder in FAQ (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6124\"\u003e#6124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/7e2ef18b939488c446c9bcc1ed550e3ce22da5bd\"\u003e\u003ccode\u003e7e2ef18\u003c/code\u003e\u003c/a\u003e Avoid type checks in methods where CPython already guarantees the received ty...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f9301990e75e9f132aa3d4bf96a98d3abfac1c04\"\u003e\u003ccode\u003ef930199\u003c/code\u003e\u003c/a\u003e docs: additional detail in migration guide for 0.29 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6123\"\u003e#6123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91ab0d1b9bf26116d1a9fd8d833c32f22259da0b\"\u003e\u003ccode\u003e91ab0d1\u003c/code\u003e\u003c/a\u003e Enable Windows abi3t tests (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6106\"\u003e#6106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/fe0fdd518fb238ebf07480fde3c54a75041a1820\"\u003e\u003ccode\u003efe0fdd5\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ePyLong*\u003c/code\u003e API (3.14+) (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6016\"\u003e#6016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f41b1dfaf4fecce0edc6417a317671bdec593d07\"\u003e\u003ccode\u003ef41b1df\u003c/code\u003e\u003c/a\u003e Hang when reattaching after detach during shutdown (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6085\"\u003e#6085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/5ae66a859c2575b2b0ce0b2982f55388561513e6\"\u003e\u003ccode\u003e5ae66a8\u003c/code\u003e\u003c/a\u003e Fix double import on RustPython (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6122\"\u003e#6122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/ad4a510dddba60ac1887800365894839f7ba5a9c\"\u003e\u003ccode\u003ead4a510\u003c/code\u003e\u003c/a\u003e PyFunction: enable some extra tests with abi3 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6118\"\u003e#6118\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c79ac0ea2d7b751ea0191b4a5462d1de8f824728\"\u003e\u003ccode\u003ec79ac0e\u003c/code\u003e\u003c/a\u003e ci: Add test for minimum supported debug build of Python (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5852\"\u003e#5852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.27.2...v0.29.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=pyo3\u0026package-manager=cargo\u0026previous-version=0.27.2\u0026new-version=0.29.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 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)\nYou can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/steck0714/Pyside6-webusb/network/alerts).\n\n\u003c/details\u003e","html_url":"https://github.com/steck0714/Pyside6-webusb/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/steck0714%2FPyside6-webusb/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"}},{"old_version":"0.29.0","new_version":"0.29.2","update_type":"patch","path":null,"pr_created_at":"2026-09-20T16:17:46.000Z","version_change":"0.29.0 → 0.29.2","issue":{"uuid":"5518979442","node_id":"PR_kwDOSdpCCs8AAAABEUfXew","number":67,"state":"closed","title":"chore(deps): bump the rust-minor-patch group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-10-01T10:32:41.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-20T16:17:46.000Z","updated_at":"2026-10-01T10:32:43.000Z","time_to_close":929695,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"rust-minor-patch","update_count":21,"packages":[{"name":"anyhow","old_version":"1.0.103","new_version":"1.0.104","repository_url":"https://github.com/dtolnay/anyhow"},{"name":"async-compression","old_version":"0.4.42","new_version":"0.4.46","repository_url":"https://github.com/Nullus157/async-compression"},{"name":"async-trait","old_version":"0.1.89","new_version":"0.1.92","repository_url":"https://github.com/dtolnay/async-trait"},{"name":"bitflags","old_version":"2.13.0","new_version":"2.13.2","repository_url":"https://github.com/bitflags/bitflags"},{"name":"blake3","old_version":"1.8.5","new_version":"1.8.7","repository_url":"https://github.com/BLAKE3-team/BLAKE3"},{"name":"bytes","old_version":"1.12.0","new_version":"1.12.1","repository_url":"https://github.com/tokio-rs/bytes"},{"name":"camino","old_version":"1.2.4","new_version":"1.2.5","repository_url":"https://github.com/camino-rs/camino"},{"name":"clap","old_version":"4.5.60","new_version":"4.6.6","repository_url":"https://github.com/clap-rs/clap"},{"name":"data-encoding","old_version":"2.11.0","new_version":"2.11.1","repository_url":"https://github.com/ia0/data-encoding"},{"name":"flate2","old_version":"1.1.9","new_version":"1.1.10","repository_url":"https://github.com/rust-lang/flate2-rs"},{"name":"futures","old_version":"0.3.32","new_version":"0.3.34","repository_url":"https://github.com/rust-lang/futures-rs"},{"name":"globset","old_version":"0.4.18","new_version":"0.4.20","repository_url":"https://github.com/BurntSushi/ripgrep"},{"name":"hyper","old_version":"1.10.1","new_version":"1.11.1","repository_url":"https://github.com/hyperium/hyper"},{"name":"libc","old_version":"0.2.186","new_version":"0.2.189","repository_url":"https://github.com/rust-lang/libc"},{"name":"pyo3","old_version":"0.29.0","new_version":"0.29.2","repository_url":"https://github.com/pyo3/pyo3"},{"name":"regex","old_version":"1.12.4","new_version":"1.13.1","repository_url":"https://github.com/rust-lang/regex"},{"name":"serde","old_version":"1.0.228","new_version":"1.0.229","repository_url":"https://github.com/serde-rs/serde"},{"name":"serde_json","old_version":"1.0.150","new_version":"1.0.151","repository_url":"https://github.com/serde-rs/json"},{"name":"serde_repr","old_version":"0.1.20","new_version":"0.1.21","repository_url":"https://github.com/dtolnay/serde-repr"},{"name":"tokio-util","old_version":"0.7.18","new_version":"0.7.19","repository_url":"https://github.com/tokio-rs/tokio"},{"name":"which","old_version":"8.0.4","new_version":"8.0.6","repository_url":"https://github.com/harryfei/which-rs"}],"path":null,"ecosystem":"cargo"},"body":"Bumps the rust-minor-patch group with 21 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [anyhow](https://github.com/dtolnay/anyhow) | `1.0.103` | `1.0.104` |\n| [async-compression](https://github.com/Nullus157/async-compression) | `0.4.42` | `0.4.46` |\n| [async-trait](https://github.com/dtolnay/async-trait) | `0.1.89` | `0.1.92` |\n| [bitflags](https://github.com/bitflags/bitflags) | `2.13.0` | `2.13.2` |\n| [blake3](https://github.com/BLAKE3-team/BLAKE3) | `1.8.5` | `1.8.7` |\n| [bytes](https://github.com/tokio-rs/bytes) | `1.12.0` | `1.12.1` |\n| [camino](https://github.com/camino-rs/camino) | `1.2.4` | `1.2.5` |\n| [clap](https://github.com/clap-rs/clap) | `4.5.60` | `4.6.6` |\n| [data-encoding](https://github.com/ia0/data-encoding) | `2.11.0` | `2.11.1` |\n| [flate2](https://github.com/rust-lang/flate2-rs) | `1.1.9` | `1.1.10` |\n| [futures](https://github.com/rust-lang/futures-rs) | `0.3.32` | `0.3.34` |\n| [globset](https://github.com/BurntSushi/ripgrep) | `0.4.18` | `0.4.20` |\n| [hyper](https://github.com/hyperium/hyper) | `1.10.1` | `1.11.1` |\n| [libc](https://github.com/rust-lang/libc) | `0.2.186` | `0.2.189` |\n| [pyo3](https://github.com/pyo3/pyo3) | `0.29.0` | `0.29.2` |\n| [regex](https://github.com/rust-lang/regex) | `1.12.4` | `1.13.1` |\n| [serde](https://github.com/serde-rs/serde) | `1.0.228` | `1.0.229` |\n| [serde_json](https://github.com/serde-rs/json) | `1.0.150` | `1.0.151` |\n| [serde_repr](https://github.com/dtolnay/serde-repr) | `0.1.20` | `0.1.21` |\n| [tokio-util](https://github.com/tokio-rs/tokio) | `0.7.18` | `0.7.19` |\n| [which](https://github.com/harryfei/which-rs) | `8.0.4` | `8.0.6` |\n\n\nUpdates `anyhow` from 1.0.103 to 1.0.104\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/anyhow/releases\"\u003eanyhow's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.0.104\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003esyn\u003c/code\u003e dev-dependency to version 3\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/dtolnay/anyhow/commit/1dbe1862aae650423e3361fbd20b7d17c5109cc3\"\u003e\u003ccode\u003e1dbe186\u003c/code\u003e\u003c/a\u003e Release 1.0.104\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/anyhow/commit/f6479f8e5e10761d7fecde0970cff363dc644d92\"\u003e\u003ccode\u003ef6479f8\u003c/code\u003e\u003c/a\u003e Update to syn 3\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dtolnay/anyhow/compare/1.0.103...1.0.104\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `async-compression` from 0.4.42 to 0.4.46\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Nullus157/async-compression/releases\"\u003easync-compression's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003easync-compression-v0.4.46\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReturn UnexpectedEof when deflate64 does not progress (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/pull/483\"\u003e#483\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003easync-compression-v0.4.45\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(deps)\u003c/em\u003e update zstd requirement from 0.13 to 0.14 (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/pull/481\"\u003e#481\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003easync-compression-v0.4.44\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdated the following local packages: compression-core, compression-codecs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003easync-compression-v0.4.43\u003c/h2\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix hang when decoding a corrupt subsequent zstd frame (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/pull/470\"\u003e#470\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/Nullus157/async-compression/commit/3f2a60041bdb51c087166893504b35f7d007e0d1\"\u003e\u003ccode\u003e3f2a600\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/484\"\u003e#484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/b22cd694cf6cb2f4753c8cae0bfdebd4b78b6fe3\"\u003e\u003ccode\u003eb22cd69\u003c/code\u003e\u003c/a\u003e Return UnexpectedEof when deflate64 does not progress (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/483\"\u003e#483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/d8c1b476bda99a05c4cc67af1ef45c2dc2405926\"\u003e\u003ccode\u003ed8c1b47\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/482\"\u003e#482\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/9ffc96c79755cb24d80c1e15507d4ae6d795e9de\"\u003e\u003ccode\u003e9ffc96c\u003c/code\u003e\u003c/a\u003e chore(deps): update zstd requirement from 0.13 to 0.14 (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/481\"\u003e#481\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/a867d186019e1df2d29859be9478b77661ba3484\"\u003e\u003ccode\u003ea867d18\u003c/code\u003e\u003c/a\u003e chore: release (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/478\"\u003e#478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/ee526f779c01200a4714743d1ac1b7f0cb511b24\"\u003e\u003ccode\u003eee526f7\u003c/code\u003e\u003c/a\u003e Fix safety contract on assume_init, use asserts (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/479\"\u003e#479\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/1de4b45697f05daafdd0104a959faed5e1021c16\"\u003e\u003ccode\u003e1de4b45\u003c/code\u003e\u003c/a\u003e Enforce WriteBuffer bounds checks in release builds (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/477\"\u003e#477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/3a711b04f31cad68cccf0d09d3115b38556fc0da\"\u003e\u003ccode\u003e3a711b0\u003c/code\u003e\u003c/a\u003e ci: pin actions (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/473\"\u003e#473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/6fd95cff631d19157c4533b717939f25971d50b8\"\u003e\u003ccode\u003e6fd95cf\u003c/code\u003e\u003c/a\u003e chore(async-compression): release v0.4.43 (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/471\"\u003e#471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nullus157/async-compression/commit/25e903d013144c57a9a8507a6a2adef61d813908\"\u003e\u003ccode\u003e25e903d\u003c/code\u003e\u003c/a\u003e Fix hang when decoding a corrupt subsequent zstd frame (\u003ca href=\"https://redirect.github.com/Nullus157/async-compression/issues/470\"\u003e#470\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Nullus157/async-compression/compare/async-compression-v0.4.42...async-compression-v0.4.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `async-trait` from 0.1.89 to 0.1.92\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dtolnay/async-trait/releases\"\u003easync-trait's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.1.92\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eResolve double_must_use clippy lint in generated code (\u003ca href=\"https://redirect.github.com/dtolnay/async-trait/issues/303\"\u003e#303\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.1.91\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to syn 3 (\u003ca href=\"https://redirect.github.com/dtolnay/async-trait/issues/299\"\u003e#299\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix mutability for by-reference receivers (\u003ca href=\"https://redirect.github.com/dtolnay/async-trait/issues/301\"\u003e#301\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.1.90\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e(yanked)\u003c/em\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/82e7e9edd60f622294373a23c0ce9c0077ad0263\"\u003e\u003ccode\u003e82e7e9e\u003c/code\u003e\u003c/a\u003e Release 0.1.92\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/9a35cb87f9366cd992bbc00d430e1b5fe1aa0cdd\"\u003e\u003ccode\u003e9a35cb8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/async-trait/issues/303\"\u003e#303\u003c/a\u003e from dtolnay/mustuse\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/875ceecb100bab2cf369178633b4791336d92b75\"\u003e\u003ccode\u003e875ceec\u003c/code\u003e\u003c/a\u003e Resolve double_must_use clippy lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/62993a57bc6a8d5bd3de23fbae48cede333cb925\"\u003e\u003ccode\u003e62993a5\u003c/code\u003e\u003c/a\u003e Raise minimum tested compiler to rust 1.88\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/d049ee02a2d50b72e03d07f06311e23bf5b512a8\"\u003e\u003ccode\u003ed049ee0\u003c/code\u003e\u003c/a\u003e Release 0.1.91\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/7a0961f275432c40cc5e7aa011362e4b50d763b1\"\u003e\u003ccode\u003e7a0961f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dtolnay/async-trait/issues/301\"\u003e#301\u003c/a\u003e from dtolnay/mutability\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/740f86f23d176229011f2389c8a206ef5ba547e7\"\u003e\u003ccode\u003e740f86f\u003c/code\u003e\u003c/a\u003e Ignore mut_mut pedantic clippy lint in test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/4699cd320a8aaaf06a2a369cb9e1f2964b14b71c\"\u003e\u003ccode\u003e4699cd3\u003c/code\u003e\u003c/a\u003e Fix mutability for by-reference receivers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/6dd3573df95878d34fcfc0ab9c242aeab3140f82\"\u003e\u003ccode\u003e6dd3573\u003c/code\u003e\u003c/a\u003e Add regression test for issue 300\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dtolnay/async-trait/commit/2371797a3938808bd7e1f4f9abd0eed51bd99634\"\u003e\u003ccode\u003e2371797\u003c/code\u003e\u003c/a\u003e Release 0.1.90\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dtolnay/async-trait/compare/0.1.89...0.1.92\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bitflags` from 2.13.0 to 2.13.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bitflags/bitflags/releases\"\u003ebitflags's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.13.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFlags: adjust order of elements in manual implementation example by \u003ca href=\"https://github.com/DanielEScherzer\"\u003e\u003ccode\u003e@​DanielEScherzer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/494\"\u003ebitflags/bitflags#494\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRe-pull const declarations outside of nested const by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/496\"\u003ebitflags/bitflags#496\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 2.13.2 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/497\"\u003ebitflags/bitflags#497\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bitflags/bitflags/compare/2.13.1...2.13.2\"\u003ehttps://github.com/bitflags/bitflags/compare/2.13.1...2.13.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e2.13.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLower the LLVM IR output of the generated output by \u003ca href=\"https://github.com/bolshoytoster\"\u003e\u003ccode\u003e@​bolshoytoster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/492\"\u003ebitflags/bitflags#492\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for 2.13.1 release by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/493\"\u003ebitflags/bitflags#493\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/bolshoytoster\"\u003e\u003ccode\u003e@​bolshoytoster\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/492\"\u003ebitflags/bitflags#492\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bitflags/bitflags/compare/2.13.0...2.13.1\"\u003ehttps://github.com/bitflags/bitflags/compare/2.13.0...2.13.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/bitflags/bitflags/blob/main/CHANGELOG.md\"\u003ebitflags's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.13.2\u003c/h1\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFlags: adjust order of elements in manual implementation example by \u003ca href=\"https://github.com/DanielEScherzer\"\u003e\u003ccode\u003e@​DanielEScherzer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/494\"\u003ebitflags/bitflags#494\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRe-pull const declarations outside of nested const by \u003ca href=\"https://github.com/KodrAus\"\u003e\u003ccode\u003e@​KodrAus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/496\"\u003ebitflags/bitflags#496\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bitflags/bitflags/compare/2.13.1...2.13.2\"\u003ehttps://github.com/bitflags/bitflags/compare/2.13.1...2.13.2\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003e2.13.1\u003c/h1\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLower the LLVM IR output of the generated output by \u003ca href=\"https://github.com/bolshoytoster\"\u003e\u003ccode\u003e@​bolshoytoster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/492\"\u003ebitflags/bitflags#492\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/bolshoytoster\"\u003e\u003ccode\u003e@​bolshoytoster\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/bitflags/bitflags/pull/492\"\u003ebitflags/bitflags#492\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/bitflags/bitflags/compare/2.13.0...2.13.1\"\u003ehttps://github.com/bitflags/bitflags/compare/2.13.0...2.13.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/80ce9b545acb0bd42150695fc351889cac1d8eb4\"\u003e\u003ccode\u003e80ce9b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/bitflags/bitflags/issues/497\"\u003e#497\u003c/a\u003e from bitflags/cargo/2.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/5822493e21489d141324ca1787a62a21d1e2f667\"\u003e\u003ccode\u003e5822493\u003c/code\u003e\u003c/a\u003e prepare for 2.13.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/48f4f1a85e72f019fe64ca18fc4cbfd04e3c6ff9\"\u003e\u003ccode\u003e48f4f1a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/bitflags/bitflags/issues/496\"\u003e#496\u003c/a\u003e from bitflags/fix/rustc-ice\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/2c0b042c1515c0d6adc94c00d5d730c1cca7aca3\"\u003e\u003ccode\u003e2c0b042\u003c/code\u003e\u003c/a\u003e re-pull const declarations outside of nested const\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/c3f8d31d59f3ba8c05833fb322ecab8a2cb88060\"\u003e\u003ccode\u003ec3f8d31\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/bitflags/bitflags/issues/494\"\u003e#494\u003c/a\u003e from DanielEScherzer/flags-docs-example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/0fc376241b05b5da46076f82db8fb1a0bb3be448\"\u003e\u003ccode\u003e0fc3762\u003c/code\u003e\u003c/a\u003e Flags: adjust order of elements in manual implementation example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/f92a2921b41644b02ca5d50a6ace542e309e6a6f\"\u003e\u003ccode\u003ef92a292\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/bitflags/bitflags/issues/493\"\u003e#493\u003c/a\u003e from bitflags/cargo/2.13.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/c1271c5dc836456340be6030efefbb758e7a0730\"\u003e\u003ccode\u003ec1271c5\u003c/code\u003e\u003c/a\u003e prepare for 2.13.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/e077c4a679706661af508a91cfd96c6a7c4ac2d2\"\u003e\u003ccode\u003ee077c4a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/bitflags/bitflags/issues/492\"\u003e#492\u003c/a\u003e from bolshoytoster/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bitflags/bitflags/commit/75d1be4a8d98c1ef786da6d3e221d30dfb376114\"\u003e\u003ccode\u003e75d1be4\u003c/code\u003e\u003c/a\u003e Bless compile fail stderr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/bitflags/bitflags/compare/2.13.0...2.13.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `blake3` from 1.8.5 to 1.8.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/releases\"\u003eblake3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.7\u003c/h2\u003e\n\u003cp\u003eversion 1.8.7\u003c/p\u003e\n\u003cp\u003eChanges since 1.8.6:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemove the \u003ccode\u003earrayref\u003c/code\u003e dependency. Unfortunately the crates.io owner\nwas compromised.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.6\u003c/h2\u003e\n\u003cp\u003eversion 1.8.6\u003c/p\u003e\n\u003cp\u003eChanges since 1.8.5:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eupdate_mmap\u003c/code\u003e and \u003ccode\u003eupdate_mmap_rayon\u003c/code\u003e (and by extension \u003ccode\u003eb3sum\u003c/code\u003e) now\nuse \u003ccode\u003eseek\u003c/code\u003e rather than \u003ccode\u003emetadata\u003c/code\u003e to get the length of a file/mapping,\nand they tolerate \u003ccode\u003emmap\u003c/code\u003e failures. That means \u003ccode\u003eb3sum\u003c/code\u003e will now memory\nmap e.g. Linux block devices, which support mapping despite reporting\nlength 0 in \u003ccode\u003emetadata\u003c/code\u003e. Hashing \u003ccode\u003eNUL\u003c/code\u003e files on Windows also works now,\nwhere previously it was an error unless you used \u003ccode\u003e--no-mmap\u003c/code\u003e or \u003ccode\u003e\u0026lt;\u003c/code\u003e.\nThis change was originally proposed by \u003ca href=\"https://github.com/nabijaczleweli\"\u003e\u003ccode\u003e@​nabijaczleweli\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/f3149ec5bb5449af877ba20377a11008ff499fa2\"\u003e\u003ccode\u003ef3149ec\u003c/code\u003e\u003c/a\u003e version 1.8.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/b65bcb71d1a38d0ef172f3708f75365a3d7a5856\"\u003e\u003ccode\u003eb65bcb7\u003c/code\u003e\u003c/a\u003e add #[allow(deprecated)] annotations to fix nightly/beta warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/483a2203a8cc3a6f2c0da9070ca04b011f44b534\"\u003e\u003ccode\u003e483a220\u003c/code\u003e\u003c/a\u003e fix warnings related to not using MAX constants\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/ba02549ebc81a9cce8eb1832b128c9b4cc8aa9c9\"\u003e\u003ccode\u003eba02549\u003c/code\u003e\u003c/a\u003e Codex: remove \u003ccode\u003earrayref\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/77b257eee7da5cd608eaf6be8343d3a4c9776af2\"\u003e\u003ccode\u003e77b257e\u003c/code\u003e\u003c/a\u003e version 1.8.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/83b1746e7c42e5b3d228c81ba1ccb9b767dc5e2c\"\u003e\u003ccode\u003e83b1746\u003c/code\u003e\u003c/a\u003e use \u003ccode\u003eseek\u003c/code\u003e instead of \u003ccode\u003emetadata\u003c/code\u003e to establish mmap length (\u003ca href=\"https://redirect.github.com/BLAKE3-team/BLAKE3/issues/570\"\u003e#570\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/9eac279fd71b79ad9e897a4cffb23ee64acfb6df\"\u003e\u003ccode\u003e9eac279\u003c/code\u003e\u003c/a\u003e use vswhere to find Visual Studio in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/fc3d0e98e840631c001837363bba77a4f64c48b9\"\u003e\u003ccode\u003efc3d0e9\u003c/code\u003e\u003c/a\u003e Fix path to Visual Studio toolchain in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/8aa5145039b972ba30e98e788752d37d14568824\"\u003e\u003ccode\u003e8aa5145\u003c/code\u003e\u003c/a\u003e a few more colons\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/commit/6bb977357b87755c14594ffce6f7133f9f6a8d78\"\u003e\u003ccode\u003e6bb9773\u003c/code\u003e\u003c/a\u003e use cargo:: build script syntax\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/BLAKE3-team/BLAKE3/compare/1.8.5...1.8.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bytes` from 1.12.0 to 1.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tokio-rs/bytes/releases\"\u003ebytes's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eBytes v1.12.1\u003c/h2\u003e\n\u003ch1\u003e1.12.1 (July 8th, 2026)\u003c/h1\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eProperly handle when \u003ccode\u003eBox::new\u003c/code\u003e panics (\u003ca href=\"https://redirect.github.com/tokio-rs/bytes/issues/837\"\u003e#837\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md\"\u003ebytes's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.12.1 (July 8th, 2026)\u003c/h1\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eProperly handle when \u003ccode\u003eBox::new\u003c/code\u003e panics (\u003ca href=\"https://redirect.github.com/tokio-rs/bytes/issues/837\"\u003e#837\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/tokio-rs/bytes/commit/76c0fbb54ed4336caf9d2311658a2f4a5627c21d\"\u003e\u003ccode\u003e76c0fbb\u003c/code\u003e\u003c/a\u003e Release bytes v1.12.1 (\u003ca href=\"https://redirect.github.com/tokio-rs/bytes/issues/838\"\u003e#838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tokio-rs/bytes/commit/924c82bf0053cb13a0fb5165925d564622b2092f\"\u003e\u003ccode\u003e924c82b\u003c/code\u003e\u003c/a\u003e Handle unwinding from Box::new (\u003ca href=\"https://redirect.github.com/tokio-rs/bytes/issues/837\"\u003e#837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tokio-rs/bytes/compare/v1.12.0...v1.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `camino` from 1.2.4 to 1.2.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/camino-rs/camino/releases\"\u003ecamino's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecamino 1.2.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cp\u003eRemoved unnecessary files from the package.\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/camino-rs/camino/blob/main/CHANGELOG.md\"\u003ecamino's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.5] - 2026-07-28\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cp\u003eRemoved unnecessary files from the package.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/camino-rs/camino/commit/0b8668c4774a8058244cb98621e5a7f4f0bc49a3\"\u003e\u003ccode\u003e0b8668c\u003c/code\u003e\u003c/a\u003e [camino] version 1.2.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/camino-rs/camino/commit/2437e7813424640e4397ecae46b3c295397c9378\"\u003e\u003ccode\u003e2437e78\u003c/code\u003e\u003c/a\u003e [meta] prepare changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/camino-rs/camino/commit/928c6862e8091ef57a6c3a1b40e3e623006ee327\"\u003e\u003ccode\u003e928c686\u003c/code\u003e\u003c/a\u003e switch to an include list in the package (\u003ca href=\"https://redirect.github.com/camino-rs/camino/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/camino-rs/camino/commit/089546bb2fedd0dcaad334ab6cb9314fc0000951\"\u003e\u003ccode\u003e089546b\u003c/code\u003e\u003c/a\u003e remove claude detritus (\u003ca href=\"https://redirect.github.com/camino-rs/camino/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/camino-rs/camino/commit/3a9bd8cc02bb818931dad21a794c0864a6c8bb10\"\u003e\u003ccode\u003e3a9bd8c\u003c/code\u003e\u003c/a\u003e add back the link for From\u0026lt;Box\u003c!-- raw HTML omitted --\u003e\u0026gt; for Box\u0026lt;Path\u0026gt; (\u003ca href=\"https://redirect.github.com/camino-rs/camino/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/camino-rs/camino/compare/camino-1.2.4...camino-1.2.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `clap` from 4.5.60 to 4.6.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/clap-rs/clap/releases\"\u003eclap's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.6.6\u003c/h2\u003e\n\u003ch2\u003e[4.6.6] - 2026-08-06\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eCommand::get_overridden_usage\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.5\u003c/h2\u003e\n\u003ch2\u003e[4.6.5] - 2026-07-31\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(help)\u003c/em\u003e Correctly mark which \u003ccode\u003evalue_names\u003c/code\u003e are optional with \u003ccode\u003enum_args\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.4\u003c/h2\u003e\n\u003ch2\u003e[4.6.4] - 2026-07-21\u003c/h2\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to syn v3\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.3\u003c/h2\u003e\n\u003ch2\u003e[4.6.3] - 2026-07-20\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Allow \u003ccode\u003e\u0026quot;literal\u0026quot;.function()\u003c/code\u003e as attribute values\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.2\u003c/h2\u003e\n\u003ch2\u003e[4.6.2] - 2026-07-15\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(help)\u003c/em\u003e Say \u003ccode\u003ealias\u003c/code\u003e when there is only one\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.1\u003c/h2\u003e\n\u003ch2\u003e[4.6.1] - 2026-04-15\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Ensure rebuilds happen when an read env variable is changed\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/clap-rs/clap/blob/main/CHANGELOG.md\"\u003eclap's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.6.6] - 2026-08-06\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eCommand::get_overridden_usage\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.5] - 2026-07-31\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(help)\u003c/em\u003e Correctly mark which \u003ccode\u003evalue_names\u003c/code\u003e are optional with \u003ccode\u003enum_args\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.4] - 2026-07-21\u003c/h2\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to syn v3\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.3] - 2026-07-20\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Allow \u003ccode\u003e\u0026quot;literal\u0026quot;.function()\u003c/code\u003e as attribute values\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.2] - 2026-07-15\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(help)\u003c/em\u003e Say \u003ccode\u003ealias\u003c/code\u003e when there is only one\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.1] - 2026-04-15\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cem\u003e(derive)\u003c/em\u003e Ensure rebuilds happen when an read env variable is changed\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.6.0] - 2026-03-12\u003c/h2\u003e\n\u003ch3\u003eCompatibility\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate MSRV to 1.85\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.5.61] - 2026-03-12\u003c/h2\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate dependencies\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/clap-rs/clap/commit/348cff3fc4d42d09a2ed1ad07b9b2cb79efc233a\"\u003e\u003ccode\u003e348cff3\u003c/code\u003e\u003c/a\u003e chore: Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/d4783779f80f486310a642bfe1d24f24e512fae8\"\u003e\u003ccode\u003ed478377\u003c/code\u003e\u003c/a\u003e docs: Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/04b9fbb83a88a3dac4c33b5589c8aa79f7c965f7\"\u003e\u003ccode\u003e04b9fbb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6414\"\u003e#6414\u003c/a\u003e from koopatroopa787/fix-bash-completion-bracket-glob\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/70752392a8ca7ea877c651622a2247b2ccc0fb5e\"\u003e\u003ccode\u003e7075239\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6422\"\u003e#6422\u003c/a\u003e from BaumiCoder/fix-fish-indentations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/f90a96636ad3b62c17790a97c1192a525b7db286\"\u003e\u003ccode\u003ef90a966\u003c/code\u003e\u003c/a\u003e fix(complete): Use spaces for indentation in fish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/dd4997ba2d5eecf789936f46f2ccb52126e128bf\"\u003e\u003ccode\u003edd4997b\u003c/code\u003e\u003c/a\u003e fix(complete): Don't glob-expand bash positionals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/8387c812c4b9726474b8407f81ec97f0acf570ed\"\u003e\u003ccode\u003e8387c81\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6399\"\u003e#6399\u003c/a\u003e from clap-rs/renovate/crate-ci-typos-1.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/8141e110ecee321277e90b4baa22a5baa02813ea\"\u003e\u003ccode\u003e8141e11\u003c/code\u003e\u003c/a\u003e chore(deps): Update compatible (dev) (\u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6398\"\u003e#6398\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/8a6bd4e43e85da71accfc407641bfff9ff71ca8f\"\u003e\u003ccode\u003e8a6bd4e\u003c/code\u003e\u003c/a\u003e chore(deps): Update pre-commit hook crate-ci/typos to v1.47.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clap-rs/clap/commit/71a7213d6e45758bb8c9c5f7c36ed768edef872e\"\u003e\u003ccode\u003e71a7213\u003c/code\u003e\u003c/a\u003e chore(deps): Update Rust Stable to v1.96 (\u003ca href=\"https://redirect.github.com/clap-rs/clap/issues/6396\"\u003e#6396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/clap-rs/clap/compare/clap_complete-v4.5.60...clap_complete-v4.6.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `data-encoding` from 2.11.0 to 2.11.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ia0/data-encoding/commit/834737d9c3dc957ce1b653959e3f35061dd77ade\"\u003e\u003ccode\u003e834737d\u003c/code\u003e\u003c/a\u003e Release 2.11.1 (\u003ca href=\"https://redirect.github.com/ia0/data-encoding/issues/160\"\u003e#160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ia0/data-encoding/commit/a57da53784fd1f928fb5bec5b72cf44cd10294f8\"\u003e\u003ccode\u003ea57da53\u003c/code\u003e\u003c/a\u003e Remove deprecated authors field from Cargo.toml (\u003ca href=\"https://redirect.github.com/ia0/data-encoding/issues/158\"\u003e#158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ia0/data-encoding/commit/8e44011f38f6f24ea8116c8aa57080e070ffbc3a\"\u003e\u003ccode\u003e8e44011\u003c/code\u003e\u003c/a\u003e Support syn v3 (\u003ca href=\"https://redirect.github.com/ia0/data-encoding/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/ia0/data-encoding/compare/v2.11.0...v2.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flate2` from 1.1.9 to 1.1.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/flate2-rs/releases\"\u003eflate2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.1.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: reuse zlib's decoder buffer by \u003ca href=\"https://github.com/Vaiz\"\u003e\u003ccode\u003e@​Vaiz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/532\"\u003erust-lang/flate2-rs#532\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add reset method for read::GzDecoder and buffered::GzDecoder by \u003ca href=\"https://github.com/Vaiz\"\u003e\u003ccode\u003e@​Vaiz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/534\"\u003erust-lang/flate2-rs#534\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop cloudflare-zlib by \u003ca href=\"https://github.com/kornelski\"\u003e\u003ccode\u003e@​kornelski\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/539\"\u003erust-lang/flate2-rs#539\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a wrapper for the \u003ccode\u003eCrc\u003c/code\u003e struct by \u003ca href=\"https://github.com/MikkelPaulson\"\u003e\u003ccode\u003e@​MikkelPaulson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/540\"\u003erust-lang/flate2-rs#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump miniz_oxide to 0.9 by \u003ca href=\"https://github.com/oscargus\"\u003e\u003ccode\u003e@​oscargus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/543\"\u003erust-lang/flate2-rs#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade miniz_oxide and add unit tests of the different flush kinds by \u003ca href=\"https://github.com/fintelia\"\u003e\u003ccode\u003e@​fintelia\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/498\"\u003erust-lang/flate2-rs#498\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix infinite loop in writing gzip header/footer by \u003ca href=\"https://github.com/Shnatsel\"\u003e\u003ccode\u003e@​Shnatsel\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/547\"\u003erust-lang/flate2-rs#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest: generate corrupt gzip fixture at runtime by \u003ca href=\"https://github.com/nanookclaw\"\u003e\u003ccode\u003e@​nanookclaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/550\"\u003erust-lang/flate2-rs#550\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject oversized gzip extra fields by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/553\"\u003erust-lang/flate2-rs#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject incomplete deflate streams at EOF by \u003ca href=\"https://github.com/Guflly\"\u003e\u003ccode\u003e@​Guflly\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/556\"\u003erust-lang/flate2-rs#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInclude \u003ccode\u003eREADME.md\u003c/code\u003e in a private module by \u003ca href=\"https://github.com/bushrat011899\"\u003e\u003ccode\u003e@​bushrat011899\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/562\"\u003erust-lang/flate2-rs#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eno_std\u003c/code\u003e support using nightly \u003ccode\u003ealloc_io\u003c/code\u003e by \u003ca href=\"https://github.com/bushrat011899\"\u003e\u003ccode\u003e@​bushrat011899\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/559\"\u003erust-lang/flate2-rs#559\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eget_mut()\u003c/code\u003e documentation to make clear how 'inner` can be used by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/558\"\u003erust-lang/flate2-rs#558\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/Vaiz\"\u003e\u003ccode\u003e@​Vaiz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/532\"\u003erust-lang/flate2-rs#532\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MikkelPaulson\"\u003e\u003ccode\u003e@​MikkelPaulson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/540\"\u003erust-lang/flate2-rs#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oscargus\"\u003e\u003ccode\u003e@​oscargus\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/543\"\u003erust-lang/flate2-rs#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nanookclaw\"\u003e\u003ccode\u003e@​nanookclaw\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/550\"\u003erust-lang/flate2-rs#550\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Guflly\"\u003e\u003ccode\u003e@​Guflly\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/556\"\u003erust-lang/flate2-rs#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bushrat011899\"\u003e\u003ccode\u003e@​bushrat011899\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/pull/562\"\u003erust-lang/flate2-rs#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/rust-lang/flate2-rs/compare/1.1.9...1.1.10\"\u003ehttps://github.com/rust-lang/flate2-rs/compare/1.1.9...1.1.10\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/ed93d4fc60eaf876c6aded741bf992d524551930\"\u003e\u003ccode\u003eed93d4f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/issues/558\"\u003e#558\u003c/a\u003e from rust-lang/lib-doc-update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/fb5228dcd7ca7f4ffb2240e6aec8547b85064c9a\"\u003e\u003ccode\u003efb5228d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/rust-lang/flate2-rs/issues/559\"\u003e#559\u003c/a\u003e from bushrat011899/no_std\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/6ed3ba32e321bd6865df6d4ec96d2550c11e50f0\"\u003e\u003ccode\u003e6ed3ba3\u003c/code\u003e\u003c/a\u003e Add executable \u003ccode\u003eno_std\u003c/code\u003e example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/faed8a04671a608efda8ae3520844889210ada95\"\u003e\u003ccode\u003efaed8a0\u003c/code\u003e\u003c/a\u003e Expand CI to test \u003ccode\u003eno_std\u003c/code\u003e compatibility and correctness\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/2ba8e7e6663bb173782c2c96d1203bed098aadf3\"\u003e\u003ccode\u003e2ba8e7e\u003c/code\u003e\u003c/a\u003e Add unstable \u003ccode\u003eno_std\u003c/code\u003e support behind \u003ccode\u003eflate2_unstable_nightly_alloc_io\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/3fe11268ccbb777e22a8352aa95307af72fa8ee9\"\u003e\u003ccode\u003e3fe1126\u003c/code\u003e\u003c/a\u003e Centralize usage of \u003ccode\u003estd\u003c/code\u003e for \u003ccode\u003eerror\u003c/code\u003e and \u003ccode\u003eio\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/98e313a26ff137b0d79eb55f192911c80862d6d5\"\u003e\u003ccode\u003e98e313a\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eGzHeader::mtime_as_duration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/064296528d679f3aef0ca11b8ca0e2cad21b283d\"\u003e\u003ccode\u003e0642965\u003c/code\u003e\u003c/a\u003e Switch to \u003ccode\u003ecore\u003c/code\u003e implicit prelude and only use \u003ccode\u003estd\u003c/code\u003e where required\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/454a63ce8ac5891d938ecf372a537e17e5cae586\"\u003e\u003ccode\u003e454a63c\u003c/code\u003e\u003c/a\u003e Remove left-over \u003ccode\u003edbg!\u003c/code\u003e statement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/flate2-rs/commit/2a490b7df96326c34a8ea75b2930eab4851cac1e\"\u003e\u003ccode\u003e2a490b7\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eruntime_detection\u003c/code\u003e feature\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/flate2-rs/compare/1.1.9...1.1.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `futures` from 0.3.32 to 0.3.34\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/futures-rs/releases\"\u003efutures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.34\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreserve cloned waker identity. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3032\"\u003e#3032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdato \u003ccode\u003esyn\u003c/code\u003e to 3. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3028\"\u003e#3028\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.33\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eReadLine\u003c/code\u003e's soundness issue regarding to exception safety. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3020\"\u003e#3020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix unsound \u003ccode\u003eSend\u003c/code\u003e impl for \u003ccode\u003eIterPinRef\u003c/code\u003e and \u003ccode\u003eIter\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3003\"\u003e#3003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix stacked borrows violation in \u003ccode\u003ecompat01as03\u003c/code\u003e implementation. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3012\"\u003e#3012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix memory leak in \u003ccode\u003eFuturesUnordered::IntoIter\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3005\"\u003e#3005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eportable-atomic-alloc\u003c/code\u003e feature and use it in \u003ccode\u003eFuturesUnordered\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3007\"\u003e#3007\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRe-export \u003ccode\u003ealloc::task::Wake\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3010\"\u003e#3010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003espin\u003c/code\u003e to 0.12. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3014\"\u003e#3014\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/futures-rs/blob/main/CHANGELOG.md\"\u003efutures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e0.3.34 - 2026-08-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePreserve cloned waker identity. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3032\"\u003e#3032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdato \u003ccode\u003esyn\u003c/code\u003e to 3. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3028\"\u003e#3028\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e0.3.33 - 2026-07-18\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eReadLine\u003c/code\u003e's soundness issue regarding to exception safety. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3020\"\u003e#3020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix unsound \u003ccode\u003eSend\u003c/code\u003e impl for \u003ccode\u003eIterPinRef\u003c/code\u003e and \u003ccode\u003eIter\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3003\"\u003e#3003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix stacked borrows violation in \u003ccode\u003ecompat01as03\u003c/code\u003e implementation. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3012\"\u003e#3012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix memory leak in \u003ccode\u003eFuturesUnordered::IntoIter\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3005\"\u003e#3005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eportable-atomic-alloc\u003c/code\u003e feature and use it in \u003ccode\u003eFuturesUnordered\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3007\"\u003e#3007\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRe-export \u003ccode\u003ealloc::task::Wake\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3010\"\u003e#3010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003espin\u003c/code\u003e to 0.12. (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3014\"\u003e#3014\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/rust-lang/futures-rs/commit/705e6b5c0f06535b1aac1cb1989a172b3d45be8c\"\u003e\u003ccode\u003e705e6b5\u003c/code\u003e\u003c/a\u003e Release 0.3.34\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/616dac7bf944ff9876b7f8b77b37c6224cbbb506\"\u003e\u003ccode\u003e616dac7\u003c/code\u003e\u003c/a\u003e compat: Inline RawWaker clone function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/41763693ee6400e2a7931530790af6e1746eb1c6\"\u003e\u003ccode\u003e4176369\u003c/code\u003e\u003c/a\u003e Inline remaining RawWaker clone functions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/f17a8957d9a25a2dd3c95b43f1c6caa108df6bcc\"\u003e\u003ccode\u003ef17a895\u003c/code\u003e\u003c/a\u003e Fix cloned FuturesUnordered waker identity\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/51d62ada9bb8eab06339475e0f1b19cfa41fb2d7\"\u003e\u003ccode\u003e51d62ad\u003c/code\u003e\u003c/a\u003e macro: bump \u003ccode\u003esyn\u003c/code\u003e to v3 (\u003ca href=\"https://redirect.github.com/rust-lang/futures-rs/issues/3028\"\u003e#3028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/9e26177cf01155d57917ee943246d0c97843deed\"\u003e\u003ccode\u003e9e26177\u003c/code\u003e\u003c/a\u003e ci: Reduce timeout-minutes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/b2d098331763fca9b0665f80bb31a66e3112a2cf\"\u003e\u003ccode\u003eb2d0983\u003c/code\u003e\u003c/a\u003e tsan: Enable Adaptive Delay\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/f733d0ea9fed49263203ae0a7cb6beb5fe1a04c4\"\u003e\u003ccode\u003ef733d0e\u003c/code\u003e\u003c/a\u003e Miri: Ignore compat tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/e5def2f60c7eb1e8e6b76da540e148cc7638b115\"\u003e\u003ccode\u003ee5def2f\u003c/code\u003e\u003c/a\u003e Rename default branch to main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/futures-rs/commit/89cc254cb8bfcc78e6a31e7711d0757f97bcb531\"\u003e\u003ccode\u003e89cc254\u003c/code\u003e\u003c/a\u003e Release 0.3.33\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/futures-rs/compare/0.3.32...0.3.34\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `globset` from 0.4.18 to 0.4.20\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/5055264ae021b5d0e01e55f723622d638ea877f0\"\u003e\u003ccode\u003e5055264\u003c/code\u003e\u003c/a\u003e globset-0.4.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/020687a77d13146923333f0beb274eeabd54a270\"\u003e\u003ccode\u003e020687a\u003c/code\u003e\u003c/a\u003e ignore,globset: increase pool capacity\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/5ed408e17eccfc59bcec48f584feece902873e54\"\u003e\u003ccode\u003e5ed408e\u003c/code\u003e\u003c/a\u003e ignore-0.4.32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/435f59fc4b43af3ab32f34d53fa34978f393fe52\"\u003e\u003ccode\u003e435f59f\u003c/code\u003e\u003c/a\u003e ignore: skip loading unreachable ignore files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/f9c05a949d1a0dc8e16dee28ca9605d38611faeb\"\u003e\u003ccode\u003ef9c05a9\u003c/code\u003e\u003c/a\u003e index: remove incorrect README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/8372866810a1f2a647d11d7780984d4402a5c1e9\"\u003e\u003ccode\u003e8372866\u003c/code\u003e\u003c/a\u003e index: add some initial indexing scaffolding\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/d99ac34406f82c03c3938c222f1786495c845034\"\u003e\u003ccode\u003ed99ac34\u003c/code\u003e\u003c/a\u003e core: add \u003ccode\u003eindex\u003c/code\u003e module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/2ed0c006fee4c441add774a711d9122a88477619\"\u003e\u003ccode\u003e2ed0c00\u003c/code\u003e\u003c/a\u003e flags: disable many flags when indexing is enabled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/59e318f5ace48db54f37bb67c152535bc17fa153\"\u003e\u003ccode\u003e59e318f\u003c/code\u003e\u003c/a\u003e ignore-0.4.31\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi/ripgrep/commit/a9dc2228fbddd1d25146f38d0926830812c97419\"\u003e\u003ccode\u003ea9dc222\u003c/code\u003e\u003c/a\u003e cargo: set \u003ccode\u003erust-version\u003c/code\u003e on all crates\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/BurntSushi/ripgrep/compare/globset-0.4.18...globset-0.4.20\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hyper` from 1.10.1 to 1.11.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hyperium/hyper/releases\"\u003ehyper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.11.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ehttp1:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003edetect TE: trailers caselessly and with other values (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4152\"\u003e#4152\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/72fcf545c9b4a261f31d89bafd3019a2d4e9e1d7\"\u003e72fcf545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erecognize \u003ccode\u003e\\n\\r\\n\u003c/code\u003e as a head terminator in the partial-read fast path (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4147\"\u003e#4147\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/3534d75c898da17b023e6bff9b4cf71afed123ad\"\u003e3534d75c\u003c/a\u003e, closes \u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4145\"\u003e#4145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eflush bytes buffered by the write re-check before yielding (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4143\"\u003e#4143\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/f660f5bf6eed3fe793f899507ff5bb9e266d4b0d\"\u003ef660f5bf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eevict pooled conn on request-side Connection: close (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4110\"\u003e#4110\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/da19be08f34d3da01c4c0f9cfe2837e7d377f73d\"\u003eda19be08\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(http1): evict pooled conn on request-side Connection: close by \u003ca href=\"https://github.com/samlandfried\"\u003e\u003ccode\u003e@​samlandfried\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4110\"\u003ehyperium/hyper#4110\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(http1): rewrite disabled old 0.1-futures conn tests by \u003ca href=\"https://github.com/seanmonstar\"\u003e\u003ccode\u003e@​seanmonstar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4138\"\u003ehyperium/hyper#4138\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CONTRIBUTING.md by \u003ca href=\"https://github.com/Catwoman08\"\u003e\u003ccode\u003e@​Catwoman08\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4140\"\u003ehyperium/hyper#4140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(error/upgrade): move from the use of ref patterns to \u003ccode\u003e\u0026amp;\u003c/code\u003e and remove allow for lint \u003ccode\u003eref_patterns\u003c/code\u003e by \u003ca href=\"https://github.com/logan-bobo\"\u003e\u003ccode\u003e@​logan-bobo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4141\"\u003ehyperium/hyper#4141\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(http1): flush bytes buffered by the write re-check before yielding by \u003ca href=\"https://github.com/ricochet\"\u003e\u003ccode\u003e@​ricochet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4143\"\u003ehyperium/hyper#4143\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix documentation typo by \u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4146\"\u003ehyperium/hyper#4146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf(http2): reserve minimal send capacity when piping request bodies by \u003ca href=\"https://github.com/sandersaares\"\u003e\u003ccode\u003e@​sandersaares\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4149\"\u003ehyperium/hyper#4149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(lib): cleanup old commented code by \u003ca href=\"https://github.com/dswij\"\u003e\u003ccode\u003e@​dswij\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4151\"\u003ehyperium/hyper#4151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(http1): recognize \\n\\r\\n as a head terminator in the partial-read fast path by \u003ca href=\"https://github.com/nam2ee\"\u003e\u003ccode\u003e@​nam2ee\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4147\"\u003ehyperium/hyper#4147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(body): add streaming read examples by \u003ca href=\"https://github.com/fzlzjerry\"\u003e\u003ccode\u003e@​fzlzjerry\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4148\"\u003ehyperium/hyper#4148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(http1): detect TE: trailers caselessly and with other values by \u003ca href=\"https://github.com/seanmonstar\"\u003e\u003ccode\u003e@​seanmonstar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4152\"\u003ehyperium/hyper#4152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix missing_errors_doc lint by \u003ca href=\"https://github.com/CinisBorn\"\u003e\u003ccode\u003e@​CinisBorn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4154\"\u003ehyperium/hyper#4154\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: drop redundant \u003ccode\u003econtinue\u003c/code\u003e and remove needless_continue allow by \u003ca href=\"https://github.com/MsfPablo\"\u003e\u003ccode\u003e@​MsfPablo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4157\"\u003ehyperium/hyper#4157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: expand crate-level cancel safety section with HTTP/1 vs HTTP/2 by \u003ca href=\"https://github.com/MsfPablo\"\u003e\u003ccode\u003e@​MsfPablo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4156\"\u003ehyperium/hyper#4156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003estyle(lib): temporarily allow some new clippy lints by \u003ca href=\"https://github.com/seanmonstar\"\u003e\u003ccode\u003e@​seanmonstar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4165\"\u003ehyperium/hyper#4165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd an initial COLLABORATORS guide by \u003ca href=\"https://github.com/seanmonstar\"\u003e\u003ccode\u003e@​seanmonstar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4158\"\u003ehyperium/hyper#4158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eclippy: remove lints removed in newer clippy versions by \u003ca href=\"https://github.com/tangaac\"\u003e\u003ccode\u003e@​tangaac\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4167\"\u003ehyperium/hyper#4167\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare v1.11.1 by \u003ca href=\"https://github.com/seanmonstar\"\u003e\u003ccode\u003e@​seanmonstar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4169\"\u003ehyperium/hyper#4169\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/samlandfried\"\u003e\u003ccode\u003e@​samlandfried\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4110\"\u003ehyperium/hyper#4110\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Catwoman08\"\u003e\u003ccode\u003e@​Catwoman08\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4140\"\u003ehyperium/hyper#4140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/logan-bobo\"\u003e\u003ccode\u003e@​logan-bobo\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4141\"\u003ehyperium/hyper#4141\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ricochet\"\u003e\u003ccode\u003e@​ricochet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4143\"\u003ehyperium/hyper#4143\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/latent-9\"\u003e\u003ccode\u003e@​latent-9\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4146\"\u003ehyperium/hyper#4146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sandersaares\"\u003e\u003ccode\u003e@​sandersaares\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4149\"\u003ehyperium/hyper#4149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nam2ee\"\u003e\u003ccode\u003e@​nam2ee\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4147\"\u003ehyperium/hyper#4147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fzlzjerry\"\u003e\u003ccode\u003e@​fzlzjerry\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4148\"\u003ehyperium/hyper#4148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/CinisBorn\"\u003e\u003ccode\u003e@​CinisBorn\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4154\"\u003ehyperium/hyper#4154\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MsfPablo\"\u003e\u003ccode\u003e@​MsfPablo\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4157\"\u003ehyperium/hyper#4157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tangaac\"\u003e\u003ccode\u003e@​tangaac\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/hyperium/hyper/pull/4167\"\u003ehyperium/hyper#4167\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/hyperium/hyper/compare/v1.11.0...v1.11.1\"\u003ehttps://github.com/hyperium/hyper/compare/v1.11.0...v1.11.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.11.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ert:\u003c/strong\u003e add \u003ccode\u003eReadBufCursor::initialized_unfilled()\u003c/code\u003e method (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4115\"\u003e#4115\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/ccc1e850dc0cda3e71b0acd11f60ca3d48d09034\"\u003eccc1e850\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/hyperium/hyper/blob/master/CHANGELOG.md\"\u003ehyper's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.11.1 (2026-08-27)\u003c/h3\u003e\n\u003ch4\u003eBug Fixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ehttp1:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003edetect TE: trailers caselessly and with other values (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4152\"\u003e#4152\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/72fcf545c9b4a261f31d89bafd3019a2d4e9e1d7\"\u003e72fcf545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erecognize \u003ccode\u003e\\n\\r\\n\u003c/code\u003e as a head terminator in the partial-read fast path (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4147\"\u003e#4147\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/3534d75c898da17b023e6bff9b4cf71afed123ad\"\u003e3534d75c\u003c/a\u003e, closes \u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4145\"\u003e#4145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eflush bytes buffered by the write re-check before yielding (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4143\"\u003e#4143\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/f660f5bf6eed3fe793f899507ff5bb9e266d4b0d\"\u003ef660f5bf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eevict pooled conn on request-side Connection: close (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4110\"\u003e#4110\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/da19be08f34d3da01c4c0f9cfe2837e7d377f73d\"\u003eda19be08\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.11.0 (2026-07-20)\u003c/h2\u003e\n\u003ch4\u003eBug Fixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ehttp1:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003ediscard content-length header when received before transfer-encoding (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4124\"\u003e#4124\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/540fff9180ce47ee5fab01b6cc2126eb6c286eda\"\u003e540fff91\u003c/a\u003e, closes \u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4123\"\u003e#4123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse append for repeat trailer values in encoder (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4118\"\u003e#4118\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/de1483d7db70477cc8799a344634ae6ee020a7db\"\u003ede1483d7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eallow up to max_headers trailers (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4108\"\u003e#4108\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/f584091ac096bd5dd478f73256188c3261a945b9\"\u003ef584091a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse append for repeat trailers (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4107\"\u003e#4107\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/876effe10fd8f8ad4535ade1f84e88f199f2cf6b\"\u003e876effe1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eflush buffered data before shutdown (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4018\"\u003e#4018\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/72046cc72e7aa82c439eed00850b8b1ad3f7e4dc\"\u003e72046cc7\u003c/a\u003e, closes \u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4022\"\u003e#4022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emore strictly enforce max_buf_size when parsing (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4093\"\u003e#4093\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/90ede307470dba98b4e184ad88d6f5aae8b0afd7\"\u003e90ede307\u003c/a\u003e, closes \u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4081\"\u003e#4081\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ehttp2:\u003c/strong\u003e avoid buffering \u003ccode\u003eUpgraded\u003c/code\u003e writes without send capacity (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4102\"\u003e#4102\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/aecf5abfbc3dc95f21ac1538db1aa3f690fa6ab6\"\u003eaecf5abf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eFeatures\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ert:\u003c/strong\u003e add \u003ccode\u003eReadBufCursor::initialized_unfilled()\u003c/code\u003e method (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4115\"\u003e#4115\u003c/a\u003e) (\u003ca href=\"https://github.com/hyperium/hyper/commit/ccc1e850dc0cda3e71b0acd11f60ca3d48d09034\"\u003eccc1e850\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/hyperium/hyper/commit/6371cd425017155f7fbecef0e57b218edbe6a93a\"\u003e\u003ccode\u003e6371cd4\u003c/code\u003e\u003c/a\u003e v1.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/37c9d0c7e018d3c218f1fc0e472207ff05ef3772\"\u003e\u003ccode\u003e37c9d0c\u003c/code\u003e\u003c/a\u003e style(lib): remove lints that have been removed in newer clippy (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4167\"\u003e#4167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/08a288135fb66321940b07ac15f3b9b8e46bc861\"\u003e\u003ccode\u003e08a2881\u003c/code\u003e\u003c/a\u003e docs(contrib): add initial COLLABORATORS guide (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4158\"\u003e#4158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/8b2e533253cf3acaadd85d3c05c93b3be2205d43\"\u003e\u003ccode\u003e8b2e533\u003c/code\u003e\u003c/a\u003e style(lib): temporarily allow some new clippy lints (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4165\"\u003e#4165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/8fcaf1a62787b824fdd7b95a3e7c9ea81acd3449\"\u003e\u003ccode\u003e8fcaf1a\u003c/code\u003e\u003c/a\u003e docs(lib): expand crate-level cancel safety section with HTTP/1 vs HTTP/2 (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4\"\u003e#4\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/d32b294f0bd0320df96c37d39a3047219ab0d7ae\"\u003e\u003ccode\u003ed32b294\u003c/code\u003e\u003c/a\u003e style(lib): fix needless_continue lint (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4157\"\u003e#4157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/fca07bd3937d4a3a4822372acdf766d0640796af\"\u003e\u003ccode\u003efca07bd\u003c/code\u003e\u003c/a\u003e style(lib): fix missing_errors_doc lint (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4154\"\u003e#4154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/72fcf545c9b4a261f31d89bafd3019a2d4e9e1d7\"\u003e\u003ccode\u003e72fcf54\u003c/code\u003e\u003c/a\u003e fix(http1): detect TE: trailers caselessly and with other values (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4152\"\u003e#4152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/af432e993c92ea65e76fc590738334e74b5ccf34\"\u003e\u003ccode\u003eaf432e9\u003c/code\u003e\u003c/a\u003e docs(body): add streaming read examples (\u003ca href=\"https://redirect.github.com/hyperium/hyper/issues/4148\"\u003e#4148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyperium/hyper/commit/3534d75c898da17b023e6bff9b4cf71afed123ad\"\u003e\u003ccode\u003e3534d75\u003c/code\u003e\u003c/a\u003e fix(http1): recognize \u003ccode\u003e\\n\\r\\n\u003c/code\u003e as a head terminator in the partial-read fast ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hyperium/hyper/compare/v1.10.1...v1.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `libc` from 0.2.186 to 0.2.189\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/libc/releases\"\u003elibc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.2.189\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEmscripten: Add \u003ccode\u003epthread_sigmask\u003c/code\u003e, \u003ccode\u003esigwait\u003c/code\u003e, \u003ccode\u003esigwaitinfo\u003c/code\u003e, \u003ccode\u003esigtimedwait\u003c/code\u003e, \u003ccode\u003efaccessat\u003c/code\u003e, and \u003ccode\u003epthread_kill\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5270\"\u003e#5270\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux SPARC: Enable the \u003ccode\u003eclone3\u003c/code\u003e syscall (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4980\"\u003e#4980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSolarish: Add \u003ccode\u003eCLOCK_PROCESS_CPUTIME_ID\u003c/code\u003e and \u003ccode\u003eCLOCK_THREAD_CPUTIME_ID\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5274\"\u003e#5274\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003eCLONE_INTO_CGROUP\u003c/code\u003e and \u003ccode\u003eCLONE_CLEAR_SIGHAND\u003c/code\u003e. These overflow their types and will be changed to a larger size in the future. (\u003ca href=\"https://github.com/rust-lang/libc/commit/8c6e6710458db4d6aa0766f6f84bbf13f640237e\"\u003e8c6e6710458d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMusl riscv32: Rename padding fields to avoid a conflict and fix the build (\u003ca href=\"https://github.com/rust-lang/libc/commit/2499ff0ad9936a036e78a4e0991445efee383564\"\u003e2499ff0ad993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNuttX: Fix \u003ccode\u003ewchar_t\u003c/code\u003e definition under Arm (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5245\"\u003e#5245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWindows: Add back link names for \u003ccode\u003etime\u003c/code\u003e-related symbols (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5300\"\u003e#5300\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.188\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestore \u003ccode\u003eSend\u003c/code\u003e and \u003ccode\u003eSync\u003c/code\u003e for \u003ccode\u003eDIR\u003c/code\u003e (\u003ca href=\"https://github.com/rust-lang/libc/commit/35b062263401733cd89065c6a553640f2ba51ff1\"\u003e35b062263401\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThese were removed in 0.2.187 because \u003ccode\u003elibc\u003c/code\u003e does not actually make \u003ccode\u003eSend\u003c/code\u003e and \u003ccode\u003eSync\u003c/code\u003e\nguarantees about \u003ccode\u003eDIR\u003c/code\u003e (or other extern types), but this caused some crates to break.\nThe traits are added back for now to allow time to migrate, but will be removed again\nin the future; please make sure your crates are not relying on \u003ccode\u003elibc::DIR: Send\u003c/code\u003e or\n\u003ccode\u003elibc::DIR: Sync\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003e0.2.187\u003c/h2\u003e\n\u003cp\u003eThis release contains a number of improvements related to 64-bit \u003ccode\u003etime_t\u003c/code\u003e configuration.\nOf note the existing \u003ccode\u003eRUST_LIBC_UNSTABLE_*\u003c/code\u003e environment variables have been replaced\nwith configuration options. The new way to use these is:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_musl_v1_2_3' cargo ...\nRUSTFLAGS='--cfg=libc_unstable_gnu_time_bits=\u0026quot;64\u0026quot;' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eBeing able to set this via \u003ccode\u003eRUSTFLAGS\u003c/code\u003e makes it easier to only apply configuration to\nspecific targets (and notably, not the host if build scripts are used).\u003c/p\u003e\n\u003cp\u003eThere are two other notable changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe 32-bit \u003ccode\u003ewindows-gnu\u003c/code\u003e targets now respect \u003ccode\u003elibc_unstable_gnu_time_bits\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003euClibc now supports a similar configuration option:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_uclibc_time64'\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rust-lang/libc/blob/0.2.189/CHANGELOG.md\"\u003elibc's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.188...0.2.189\"\u003e0.2.189\u003c/a\u003e - 2026-07-21\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEmscripten: Add \u003ccode\u003epthread_sigmask\u003c/code\u003e, \u003ccode\u003esigwait\u003c/code\u003e, \u003ccode\u003esigwaitinfo\u003c/code\u003e, \u003ccode\u003esigtimedwait\u003c/code\u003e, \u003ccode\u003efaccessat\u003c/code\u003e, and \u003ccode\u003epthread_kill\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5270\"\u003e#5270\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLinux SPARC: Enable the \u003ccode\u003eclone3\u003c/code\u003e syscall (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/4980\"\u003e#4980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSolarish: Add \u003ccode\u003eCLOCK_PROCESS_CPUTIME_ID\u003c/code\u003e and \u003ccode\u003eCLOCK_THREAD_CPUTIME_ID\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5274\"\u003e#5274\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003eCLONE_INTO_CGROUP\u003c/code\u003e and \u003ccode\u003eCLONE_CLEAR_SIGHAND\u003c/code\u003e. These overflow their types and will be changed to a larger size in the future. (\u003ca href=\"https://github.com/rust-lang/libc/commit/8c6e6710458db4d6aa0766f6f84bbf13f640237e\"\u003e8c6e6710458d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMusl riscv32: Rename padding fields to avoid a conflict and fix the build (\u003ca href=\"https://github.com/rust-lang/libc/commit/2499ff0ad9936a036e78a4e0991445efee383564\"\u003e2499ff0ad993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNuttX: Fix \u003ccode\u003ewchar_t\u003c/code\u003e definition under Arm (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5245\"\u003e#5245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWindows: Add back link names for \u003ccode\u003etime\u003c/code\u003e-related symbols (\u003ca href=\"https://redirect.github.com/rust-lang/libc/pull/5300\"\u003e#5300\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.187...0.2.188\"\u003e0.2.188\u003c/a\u003e - 2026-07-21\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestore \u003ccode\u003eSend\u003c/code\u003e and \u003ccode\u003eSync\u003c/code\u003e for \u003ccode\u003eDIR\u003c/code\u003e (\u003ca href=\"https://github.com/rust-lang/libc/commit/35b062263401733cd89065c6a553640f2ba51ff1\"\u003e35b062263401\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThese were removed in 0.2.187 because \u003ccode\u003elibc\u003c/code\u003e does not actually make \u003ccode\u003eSend\u003c/code\u003e and \u003ccode\u003eSync\u003c/code\u003e\nguarantees about \u003ccode\u003eDIR\u003c/code\u003e (or other extern types), but this caused some crates to break.\nThe traits are added back for now to allow time to migrate, but will be removed again\nin the future; please make sure your crates are not relying on \u003ccode\u003elibc::DIR: Send\u003c/code\u003e or\n\u003ccode\u003elibc::DIR: Sync\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.186...0.2.187\"\u003e0.2.187\u003c/a\u003e - 2026-07-20\u003c/h2\u003e\n\u003cp\u003eThis release contains a number of improvements related to 64-bit \u003ccode\u003etime_t\u003c/code\u003e configuration.\nOf note the existing \u003ccode\u003eRUST_LIBC_UNSTABLE_*\u003c/code\u003e environment variables have been replaced\nwith configuration options. The new way to use these is:\u003c/p\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003eRUSTFLAGS='--cfg=libc_unstable_musl_v1_2_3' cargo ...\nRUSTFLAGS='--cfg=libc_unstable_gnu_time_bits=\u0026quot;64\u0026quot;' cargo ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eBeing able to set this via \u003ccode\u003eRUSTFLAGS\u003c/code\u003e makes it easier to only apply configuration to\nspecific targets (and notably, not the host if build scripts are used).\u003c/p\u003e\n\u003cp\u003eThere are two other notable changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe 32-bit \u003ccode\u003ewindows-gnu\u003c/code\u003e targets now respect \u003ccode\u003elibc_unstable_gnu_time_bits\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003euClibc now supports a similar configuration option:\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/rust-lang/libc/commit/ef0906e20828777175f65caa7e681a0ce33c559a\"\u003e\u003ccode\u003eef0906e\u003c/code\u003e\u003c/a\u003e libc: Release 0.2.189\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/5a79f7642911e17cf9629857b88503e50d433fc4\"\u003e\u003ccode\u003e5a79f76\u003c/code\u003e\u003c/a\u003e riscv32-musl: Rename padding fields to avoid a conflict\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/3e51062f4249054264ae11363d8efbb652f9ab2e\"\u003e\u003ccode\u003e3e51062\u003c/code\u003e\u003c/a\u003e psp: Fix \u003ccode\u003eoverflowing_literals\u003c/code\u003e warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/e352fdd17b43c5e2a911041512c4d62953121018\"\u003e\u003ccode\u003ee352fdd\u003c/code\u003e\u003c/a\u003e emscripten: add pthread_sigmask, sigwait, sigwaitinfo, sigtimedwait, faccessa...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/63221b314d46bccaea33bdba2f3d75f25dc9c739\"\u003e\u003ccode\u003e63221b3\u003c/code\u003e\u003c/a\u003e macros: Require \u003ccode\u003esafe\u003c/code\u003e in \u003ccode\u003esafe_f!\u003c/code\u003e invocations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/707ab528fc31619d80ca8ee5fd714ff7285e818e\"\u003e\u003ccode\u003e707ab52\u003c/code\u003e\u003c/a\u003e macros: Require \u003ccode\u003eunsafe\u003c/code\u003e in \u003ccode\u003ef!\u003c/code\u003e invocations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8e40c9404b8127d5dd3d6f015c1da1f12b7dd44b\"\u003e\u003ccode\u003e8e40c94\u003c/code\u003e\u003c/a\u003e Enable clone3() syscall on sparc-linux and sparc64-linux\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/8427909fb3c9890bd89c787e8ab18673032b0360\"\u003e\u003ccode\u003e8427909\u003c/code\u003e\u003c/a\u003e windows: Add back link names for \u003ccode\u003etime\u003c/code\u003e-related symbols\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/b4863fa4c31a95524339a6ee89aa5df042a33745\"\u003e\u003ccode\u003eb4863fa\u003c/code\u003e\u003c/a\u003e nuttx: fix wchar_t definition under arm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rust-lang/libc/commit/41c683da26d2c74a69205ca1e5e87a415aa313c8\"\u003e\u003ccode\u003e41c683d\u003c/code\u003e\u003c/a\u003e nuttx: mirror type definitions\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rust-lang/libc/compare/0.2.186...0.2.189\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyo3` from 0.29.0 to 0.29.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.2\u003c/h2\u003e\n\u003cp\u003eThis patch fixes a regression in PyO3 0.29.1 which broke PyPy 3.11 compatibility (\u003ccode\u003e#[pyclass]\u003c/code\u003e types would crash PyPy on instance deletion).\u003c/p\u003e\n\u003cp\u003eA few further fixes have also landed with similar themes to PyO3 0.29.1: fixes to minor reference counting bugs, rough edges which would cause crashes, issues which would cause failed builds, and fixes to \u003ccode\u003eexperimental-inspect\u003c/code\u003e type stub generation.\u003c/p\u003e\n\u003cp\u003eFor a full list of the exact fixes please consult the CHANGELOG.\u003c/p\u003e\n\u003cp\u003eThank you to the following contributors for the improvements:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\n\u003ca href=\"https://github.com/ImFeH2\"\u003e\u003ccode\u003e@​ImFeH2\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Tpt\"\u003e\u003ccode\u003e@​Tpt\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/WaterWhisperer\"\u003e\u003ccode\u003e@​WaterWhisperer\u003c/c...\n\n_Description has been truncated_","html_url":"https://github.com/sarkologist/anki-personal/pull/67","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sarkologist%2Fanki-personal/issues/67","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/67/packages"}},{"old_version":"0.23.5","new_version":"0.29.0","update_type":"minor","path":"/crates/marketing_mcp_fast in the cargo group across 1 directory","pr_created_at":"2026-09-16T07:26:32.000Z","version_change":"0.23.5 → 0.29.0","issue":{"uuid":"5471540801","node_id":"PR_kwDOT_ZaEc8AAAABDugeTA","number":18,"state":"open","title":"build(deps): bump pyo3 from 0.23.5 to 0.29.0 in /crates/marketing_mcp_fast in the cargo group across 1 directory","user":"dependabot[bot]","labels":["dependencies","rust"],"assignees":[],"locked":false,"comments_count":6,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-16T07:26:32.000Z","updated_at":"2026-09-16T07:27:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"pyo3","old_version":"0.23.5","new_version":"0.29.0","repository_url":"https://github.com/pyo3/pyo3"}],"path":"/crates/marketing_mcp_fast in the cargo group across 1 directory","ecosystem":"cargo"},"body":"Bumps the cargo group with 1 update in the /crates/marketing_mcp_fast directory: [pyo3](https://github.com/pyo3/pyo3).\n\nUpdates `pyo3` from 0.23.5 to 0.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyo3/pyo3/releases\"\u003epyo3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePyO3 0.29.0\u003c/h2\u003e\n\u003cp\u003eThis release is a relatively large release with improvements across many areas of PyO3's API.\u003c/p\u003e\n\u003ch3\u003eBuild and packaging changes\u003c/h3\u003e\n\u003cp\u003eThis release brings full support for Python 3.15 beta. We encourage downstream projects to begin testing and distributing Python 3.15 beta wheels so that the ecosystem can prepare for the 3.15 final release later in the year.\u003c/p\u003e\n\u003cp\u003eAlongside Python 3.15 support comes support for its new \u0026quot;abi3t\u0026quot; stable ABI which supports both free-threaded and gil-enabled Python builds. For projects distributing stable ABI wheels, we recommend distributing (for each OS/architecture) an abi3 wheel built for your minimum supported Python version, a 3.14t version-specific wheel for free-threaded Python 3.14, and an abi3t wheel to support Python 3.15 (and future versions).\u003c/p\u003e\n\u003cp\u003eSupport for Python 3.7 has been dropped. Support for Python 3.13t, the first experimental free-threaded release of CPython, has also been dropped. 3.14t (and soon 3.15t) is more stable, performant, and the starting point for CPython's own declaration of \u0026quot;support\u0026quot; for the free-threaded build.\u003c/p\u003e\n\u003cp\u003eThe PyO3 build process (via the \u003ccode\u003epyo3-build-config\u003c/code\u003e crate) has been adjusted to reduce the cost of rebuilds when the environment used to detect the Python interpreter changes; \u003ccode\u003epyo3-build-config\u003c/code\u003e and \u003ccode\u003epyo3-macros\u003c/code\u003e will no longer be rebuilt in such cases (although \u003ccode\u003epyo3-ffi\u003c/code\u003e and crates downstream of it still will be rebuilt). As a consequence the \u003ccode\u003epyo3_build_config\u003c/code\u003e APIs now require crates to have a direct dependency on \u003ccode\u003epyo3\u003c/code\u003e or \u003ccode\u003epyo3-ffi\u003c/code\u003e. We hope to continue to reduce rebuild frequency and cost in a future PyO3 release.\u003c/p\u003e\n\u003ch3\u003eSecurity updates\u003c/h3\u003e\n\u003cp\u003eWith the recent boom in AI-assisted security scanning, PyO3 has inevitably had several correctness issues exposed by AI-assisted scanning.\u003c/p\u003e\n\u003cp\u003eIn particular, PyO3 0.29 fixes two security vulnerabilities we will be releasing to the RustSec Advisory Database imminently:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMissing \u003ccode\u003eSync\u003c/code\u003e bound on \u003ccode\u003ePyCFunction::new_closure\u003c/code\u003e closures\u003c/li\u003e\n\u003cli\u003ePossible out of bounds read in \u003ccode\u003eBoundTupleIterator::nth_back\u003c/code\u003e and \u003ccode\u003eBoundListIterator::nth_back\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAny code using the above APIs is advised to update as soon as possible.\u003c/p\u003e\n\u003cp\u003eThis release also contains several other minor breaking changes to close soundness holes uncovered by AI-assisted scanning. Our assessment as maintainers was that, excluding the two vulnerability cases listed above, these correctness issues would likely have crashed immediately upon user testing rather than leading to attacker-exploitable pathways. We nevertheless wanted to see them closed without the usual deprecation cycle. These cases are noted in the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eOther major themes in this release\u003c/h3\u003e\n\u003cp\u003eNew in this release is a CLI in \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate type stubs along with the \u003ccode\u003eexperimental-inspect\u003c/code\u003e feature. Downstream, \u003ccode\u003ematurin\u003c/code\u003e has also gained support to generate type stubs using the feature. The feature is reaching a point where substantial amount of type stubs can be generated automatically. We would like to encourage users to begin using this feature and helping us find what functionality is missing, with a hope we can declare its API stable given sufficient feedback.\u003c/p\u003e\n\u003cp\u003eA substantial amount of effort has been invested in \u003ccode\u003epyo3-ffi\u003c/code\u003e as part of the process of extending it with 3.15's new APIs. There have been many missing APIs from older Python versions added. There have also been a number of fixes to incorrect definitions (these are breaking changes, but also necessary for correctness); we hope there will be far fewer such cases in the future due to more comprehensive checking added to PyO3's CI. Finally, many private CPython APIs (those with \u003ccode\u003e_Py\u003c/code\u003e underscore-named prefix) have been removed from \u003ccode\u003epyo3-ffi\u003c/code\u003e's public API.\u003c/p\u003e\n\u003ch3\u003eIn closing\u003c/h3\u003e\n\u003cp\u003eThere are also many other incremental improvements, bug fixes and smaller features; full detail can be found in the \u003ca href=\"https://pyo3.rs/v0.29.0/changelog.html\"\u003eCHANGELOG\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003ePlease consult the \u003ca href=\"https://pyo3.rs/v0.29.0/migration.html\"\u003emigration guide\u003c/a\u003e for help upgrading.\u003c/p\u003e\n\u003cp\u003eThank you to everyone who contributed code, documentation, design ideas, bug reports, and feedback. The following contributors' commits are included in this release:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Alc-Alc\"\u003e\u003ccode\u003e@​Alc-Alc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/alex\"\u003e\u003ccode\u003e@​alex\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/anuraaga\"\u003e\u003ccode\u003e@​anuraaga\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/BD103\"\u003e\u003ccode\u003e@​BD103\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/bschoenmaeckers\"\u003e\u003ccode\u003e@​bschoenmaeckers\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Cheukting\"\u003e\u003ccode\u003e@​Cheukting\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/ChristopherRabotin\"\u003e\u003ccode\u003e@​ChristopherRabotin\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/clin1234\"\u003e\u003ccode\u003e@​clin1234\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/codeguru42\"\u003e\u003ccode\u003e@​codeguru42\u003c/code\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md\"\u003epyo3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-11\u003c/h2\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport the new PEP 803 abi3t ABI with new \u003ccode\u003eabi3t\u003c/code\u003e and \u003ccode\u003eabi3t-py315\u003c/code\u003e features. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-macros-backend\u003c/code\u003e no longer depends on \u003ccode\u003epyo3-build-config\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5809\"\u003e#5809\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.13t (3.14t and above continue to be supported; CPython declared free-threading supported starting with Python 3.14). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5865\"\u003e#5865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.7. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5912\"\u003e#5912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExtend range of supported versions of \u003ccode\u003ehashbrown\u003c/code\u003e optional dependency to include version 0.17. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5973\"\u003e#5973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport Python 3.15.0b1. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6014\"\u003e#6014\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epyo3-ffi\u003c/code\u003e is now \u003ccode\u003eno_std\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6022\"\u003e#6022\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_traceback\u003c/code\u003e to set the traceback of an exception object. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5349\"\u003e#5349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUnicodeDecodeError::new_err_from_utf8\u003c/code\u003e to create a \u003ccode\u003ePyErr\u003c/code\u003e from a \u003ccode\u003estr::Utf8Error\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5668\"\u003e#5668\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: implement \u003ccode\u003eINPUT_TYPE\u003c/code\u003e and \u003ccode\u003eOUTPUT_TYPE\u003c/code\u003e on optional third-party crate conversions. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5770\"\u003e#5770\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eexperimental-inspect\u003c/code\u003e: include doc comments in generated stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5782\"\u003e#5782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::PythonAbi\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiKind\u003c/code\u003e, \u003ccode\u003epyo3_build_config::PythonAbiBuilder\u003c/code\u003e, \u003ccode\u003epyo3_build_config::InterpreterConfig::target_abi\u003c/code\u003e, and \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder::target_abi\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5807\"\u003e#5807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBorrowed::get\u003c/code\u003e as an equivalent to \u003ccode\u003eBound::get\u003c/code\u003e and \u003ccode\u003ePy::get\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5849\"\u003e#5849\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyFrame::new\u003c/code\u003e, \u003ccode\u003ePyTraceBack::new\u003c/code\u003e, and \u003ccode\u003ePyFrameMethods::line_number\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5857\"\u003e#5857\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyUntypedBuffer::obj\u003c/code\u003e to retrieve the Python object owning the buffer. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5870\"\u003e#5870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::new_with_value\u003c/code\u003e and \u003ccode\u003ePyCapsule::new_with_value_and_destructor\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5881\"\u003e#5881\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyErr::set_context\u003c/code\u003e and \u003ccode\u003ePyErr::context\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a small CLI to \u003ccode\u003epyo3-introspection\u003c/code\u003e to generate stubs. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5904\"\u003e#5904\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePython::version_str\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5921\"\u003e#5921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eTryFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003ePyRef\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyRefMut\u0026lt;T\u0026gt;\u003c/code\u003e, \u003ccode\u003ePyClassGuard\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u0026lt;T\u0026gt;\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u0026lt;\u0026amp;Bound\u0026lt;T\u0026gt;\u0026gt;\u003c/code\u003e for \u003ccode\u003eBound\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003ePy\u0026lt;T\u0026gt;\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5922\"\u003e#5922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyDictMethods::set_default\u003c/code\u003e and \u003ccode\u003ePyDictMethods::set_default_ref\u003c/code\u003e to allow atomically setting default values in a PyDict. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5955\"\u003e#5955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003ePyFrameMethods::outer|code|var|builtins|globals|locals\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5967\"\u003e#5967\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFrom\u003c/code\u003e conversions for \u003ccode\u003ePyErr\u003c/code\u003e from \u003ccode\u003estd::time::TryFromFloatSecsError\u003c/code\u003e, \u003ccode\u003estd::time::SystemTimeError\u003c/code\u003e, \u003ccode\u003estd::path::StripPrefixError\u003c/code\u003e, \u003ccode\u003estd::env::JoinPathsError\u003c/code\u003e, \u003ccode\u003estd::char::ParseCharError\u003c/code\u003e, and \u003ccode\u003estd::char::CharTryFromError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6001\"\u003e#6001\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epyo3_build_config::InterpreterConfigBuilder\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6034\"\u003e#6034\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyCapsule::import_pointer\u003c/code\u003e \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6066\"\u003e#6066\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6073\"\u003e#6073\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyListMethods::get_item_unchecked\u003c/code\u003e, \u003ccode\u003ePyTupleMethods::get_item_unchecked\u003c/code\u003e, and \u003ccode\u003ePyTupleMethods::get_borrowed_item_unchecked\u003c/code\u003e on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6075\"\u003e#6075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuardMapSuper\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6104\"\u003e#6104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e to \u003ccode\u003epyo3::prelude\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eDebug\u003c/code\u003e impls for \u003ccode\u003ePyClassGuard\u003c/code\u003e and \u003ccode\u003ePyClassGuardMut\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6112\"\u003e#6112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnable extending \u003ccode\u003ePyDateTime\u003c/code\u003e, \u003ccode\u003ePyDate\u003c/code\u003e, \u003ccode\u003ePyTime\u003c/code\u003e, \u003ccode\u003ePyDelta\u003c/code\u003e and \u003ccode\u003ePyTzInfo\u003c/code\u003e on abi3 with python 3.12+. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6115\"\u003e#6115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ePyFunction\u003c/code\u003e available on abi3. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/6117\"\u003e#6117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFFI definitions:\n\u003cul\u003e\n\u003cli\u003eAdded FFI definitions \u003ccode\u003ePyUnstable_Object_IsUniquelyReferenced\u003c/code\u003e, \u003ccode\u003ePyUnstable_Object_IsUniquelyReferencedTemporary\u003c/code\u003e, \u003ccode\u003ePyUnstable_EnableTryIncref\u003c/code\u003e, and \u003ccode\u003ePyUnstable_TryIncref\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5828\"\u003e#5828\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003effi::PyErr_GetHandledException\u003c/code\u003e and \u003ccode\u003effi::PyErr_SetHandledException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5887\"\u003e#5887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePy_HASH_SIPHASH13\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5891\"\u003e#5891\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ePyStructSequence_UnnamedField\u003c/code\u003e constant on Python 3.9 and up (or 3.11 with abi3 features). \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5892\"\u003e#5892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyUnstable_InterpreterFrame_GetCode\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLasti\u003c/code\u003e, \u003ccode\u003ePyUnstable_InterpreterFrame_GetLine\u003c/code\u003e, and \u003ccode\u003ePyUnstable_ExecutableKinds\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5932\"\u003e#5932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyMarshal_WriteLongToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_WriteObjectToFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadLongFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadShortFromFile\u003c/code\u003e, \u003ccode\u003ePyMarshal_ReadObjectFromFile\u003c/code\u003e, and \u003ccode\u003ePyMarshal_ReadLastObjectFromFile\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5934\"\u003e#5934\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyObject_GetAIter\u003c/code\u003e, \u003ccode\u003ePyAIter_Check\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_HasKeyStringWithError\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItem\u003c/code\u003e, \u003ccode\u003ePyMapping_GetOptionalItemString\u003c/code\u003e, \u003ccode\u003ePySequence_ITEM\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_SIZE\u003c/code\u003e, \u003ccode\u003ePySequence_Fast_GET_ITEM\u003c/code\u003e, and \u003ccode\u003ePySequence_Fast_ITEMS\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5942\"\u003e#5942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definition \u003ccode\u003ecompat::PyObject_HasAttrWithError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5944\"\u003e#5944\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd FFI definitions \u003ccode\u003ePyDict_SetDefault\u003c/code\u003e, \u003ccode\u003ePyDict_SetDefaultRef\u003c/code\u003e, \u003ccode\u003ePyDict_ContainsString\u003c/code\u003e, \u003ccode\u003ePyDict_Pop\u003c/code\u003e, \u003ccode\u003ePyDict_PopString\u003c/code\u003e, \u003ccode\u003ePyDict_ClearWatcher\u003c/code\u003e, \u003ccode\u003ePyDict_Watch\u003c/code\u003e, \u003ccode\u003ePyDict_Unwatch\u003c/code\u003e, and \u003ccode\u003ePyFrozenDict_New\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/PyO3/pyo3/pull/5947\"\u003e#5947\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\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/PyO3/pyo3/commit/0f90242785fe0ce5e4e67c1da5ed361d410dbf8c\"\u003e\u003ccode\u003e0f90242\u003c/code\u003e\u003c/a\u003e release: 0.29.0 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6107\"\u003e#6107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/cd128ed50e6fffc4e49a08c149599a3b8bd21d5b\"\u003e\u003ccode\u003ecd128ed\u003c/code\u003e\u003c/a\u003e doc: mention abi3t, python3t.dll, and abi3t_compat folder in FAQ (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6124\"\u003e#6124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/7e2ef18b939488c446c9bcc1ed550e3ce22da5bd\"\u003e\u003ccode\u003e7e2ef18\u003c/code\u003e\u003c/a\u003e Avoid type checks in methods where CPython already guarantees the received ty...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f9301990e75e9f132aa3d4bf96a98d3abfac1c04\"\u003e\u003ccode\u003ef930199\u003c/code\u003e\u003c/a\u003e docs: additional detail in migration guide for 0.29 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6123\"\u003e#6123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/91ab0d1b9bf26116d1a9fd8d833c32f22259da0b\"\u003e\u003ccode\u003e91ab0d1\u003c/code\u003e\u003c/a\u003e Enable Windows abi3t tests (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6106\"\u003e#6106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/fe0fdd518fb238ebf07480fde3c54a75041a1820\"\u003e\u003ccode\u003efe0fdd5\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ePyLong*\u003c/code\u003e API (3.14+) (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6016\"\u003e#6016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/f41b1dfaf4fecce0edc6417a317671bdec593d07\"\u003e\u003ccode\u003ef41b1df\u003c/code\u003e\u003c/a\u003e Hang when reattaching after detach during shutdown (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6085\"\u003e#6085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/5ae66a859c2575b2b0ce0b2982f55388561513e6\"\u003e\u003ccode\u003e5ae66a8\u003c/code\u003e\u003c/a\u003e Fix double import on RustPython (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6122\"\u003e#6122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/ad4a510dddba60ac1887800365894839f7ba5a9c\"\u003e\u003ccode\u003ead4a510\u003c/code\u003e\u003c/a\u003e PyFunction: enable some extra tests with abi3 (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/6118\"\u003e#6118\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyO3/pyo3/commit/c79ac0ea2d7b751ea0191b4a5462d1de8f824728\"\u003e\u003ccode\u003ec79ac0e\u003c/code\u003e\u003c/a\u003e ci: Add test for minimum supported debug build of Python (\u003ca href=\"https://redirect.github.com/pyo3/pyo3/issues/5852\"\u003e#5852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyo3/pyo3/compare/v0.23.5...v0.29.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=pyo3\u0026package-manager=cargo\u0026previous-version=0.23.5\u0026new-version=0.29.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 show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\nYou can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/imMamdouhaboammar/pymc-marketing-mcp/network/alerts).\n\n\u003c/details\u003e\n\n\u003c!-- This is an auto-generated description by cubic. --\u003e\n---\n## Summary by cubic\nBumps `pyo3` from 0.23.5 to 0.29.0 in `/crates/marketing_mcp_fast`. This major upgrade includes breaking changes and security fixes, so the crate may need code updates to compile and run correctly.\n\n\u003csup\u003eWritten for commit 9fc140f423a3db114e37f0ca7dfc9611b9506ecc. Summary will update on new commits.\u003c/sup\u003e\n\n\u003ca href=\"https://cubic.dev/pr/imMamdouhaboammar/pymc-marketing-mcp/pull/18?utm_source=github\" target=\"_blank\" rel=\"noopener noreferrer\" data-no-image-dialog=\"true\"\u003e\u003cpicture\u003e\u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"\u003e\u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://www.cubic.dev/buttons/review-in-cubic-light.svg\"\u003e\u003cimg alt=\"Review in cubic\" src=\"https://www.cubic.dev/buttons/review-in-cubic-dark.svg\"\u003e\u003c/picture\u003e\u003c/a\u003e\n\n\u003c!-- End of auto-generated description by cubic. --\u003e\n\n","html_url":"https://github.com/imMamdouhaboammar/pymc-marketing-mcp/pull/18","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/imMamdouhaboammar%2Fpymc-marketing-mcp/issues/18","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/18/packages"}}]}