{"id":8665,"name":"dnsjava:dnsjava","ecosystem":"maven","repository_url":"https://github.com/dnsjava/dnsjava","issues_count":97,"created_at":"2025-06-06T22:25:04.143Z","updated_at":"2025-06-06T22:25:04.143Z","purl":"pkg:maven/dnsjava:dnsjava","metadata":{"id":4804948,"name":"dnsjava:dnsjava","ecosystem":"maven","description":"dnsjava is an implementation of DNS in Java. It supports all defined record types (including the DNSSEC types), and unknown types. It can be used for queries, zone transfers, and dynamic updates. It includes a cache which can be used by clients, and a minimal implementation of a server. It supports TSIG authenticated messages, partial DNSSEC verification, and EDNS0.","homepage":"https://github.com/dnsjava/dnsjava","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/dnsjava/dnsjava","keywords_array":[],"namespace":"dnsjava","versions_count":34,"first_release_published_at":"2005-11-08T22:20:57.000Z","latest_release_published_at":"2025-01-26T14:13:28.000Z","latest_release_number":"3.6.3","last_synced_at":"2025-05-19T14:15:47.907Z","created_at":"2022-07-26T13:33:10.878Z","updated_at":"2025-05-19T14:15:47.908Z","registry_url":"https://central.sonatype.com/artifact/dnsjava/dnsjava/","install_command":null,"documentation_url":"https://appdoc.app/artifact/dnsjava/dnsjava/","metadata":{},"repo_metadata":{"uuid":"17084567","full_name":"dnsjava/dnsjava","owner":"dnsjava","description":"dnsjava - an implementation of the DNS protocol in Java","archived":false,"fork":false,"pushed_at":"2023-11-30T00:03:45.000Z","size":8074,"stargazers_count":838,"open_issues_count":11,"forks_count":225,"subscribers_count":41,"default_branch":"master","last_synced_at":"2023-12-03T05:20:51.857Z","etag":null,"topics":["dns","dnsjava","dnssec","dnssec-support","java","java-library","library"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dnsjava.png","metadata":{"files":{"readme":"README.adoc","changelog":"Changelog","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2014-02-22T12:43:49.000Z","updated_at":"2023-11-30T09:35:28.000Z","dependencies_parsed_at":"2023-11-11T11:24:10.528Z","dependency_job_id":"a74aaf0a-cc5e-4b81-aeb7-90b010f97191","html_url":"https://github.com/dnsjava/dnsjava","commit_stats":null,"previous_names":[],"tags_count":87,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dnsjava","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":174398680,"owners_count":10109535,"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":"dnsjava","name":"dnsjava","uuid":"6755615","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/6755615?v=4","repositories_count":1,"last_synced_at":"2023-08-15T05:24:45.986Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/dnsjava","created_at":"2022-11-07T07:12:16.875Z","updated_at":"2023-08-15T05:24:46.033Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dnsjava","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dnsjava/repositories"},"tags":[{"name":"v3.5.3","sha":"1f5940676c73e70f1987ea50e0128f8b70f0f4d7","kind":"tag","published_at":"2023-11-11T10:54:35.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.5.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.5.3/manifests"},{"name":"v3.5.2","sha":"785639f66732d6c10db89abe277981039d367e18","kind":"tag","published_at":"2022-11-16T10:08:56.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.5.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.5.2/manifests"},{"name":"v3.5.1","sha":"ff22e0c8aba46821e667781c7d3e81e9d1c35846","kind":"tag","published_at":"2022-05-15T14:58:57.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.5.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.5.1/manifests"},{"name":"v3.5.0","sha":"f1d24bc59c7e0a131d18dfbcd155b625536a71c0","kind":"tag","published_at":"2022-02-05T18:38:00.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.5.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.5.0/manifests"},{"name":"v3.4.3","sha":"ced541197d9ebc5587fa77eadd57cc24c66fd7e5","kind":"tag","published_at":"2021-12-05T15:23:27.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.4.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.4.3/manifests"},{"name":"v3.4.2","sha":"272961536f85f24fb832cef0bbf91144c99d7f2e","kind":"tag","published_at":"2021-09-19T16:01:13.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.4.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.4.2/manifests"},{"name":"v3.4.1","sha":"018b45f5b2d49612c607e46d64f5744ca28e6a91","kind":"tag","published_at":"2021-07-30T09:36:59.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.4.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.4.1/manifests"},{"name":"v3.4.0","sha":"11ae6ce6c8d8763d4258c3782a607d626f217656","kind":"tag","published_at":"2021-06-09T18:04:54.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.4.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.4.0/manifests"},{"name":"v3.3.1","sha":"b672aa7b5aa1a74cc0e4e76862d34421bb7c1458","kind":"tag","published_at":"2020-10-28T21:20:36.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.3.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.3.1/manifests"},{"name":"v3.3.0","sha":"6c6180fbd7b5110962032169ee7af15f18c39b57","kind":"tag","published_at":"2020-09-27T10:22:53.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.3.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.3.0/manifests"},{"name":"v3.2.2","sha":"1ca08ae991076787606892f4d7b765b07eb263c2","kind":"tag","published_at":"2020-07-11T12:14:31.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.2.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.2.2/manifests"},{"name":"v3.2.1","sha":"1d1468feeaed3fbf4ac7f26453bd0132e6604f79","kind":"tag","published_at":"2020-06-22T14:49:38.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.2.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.2.1/manifests"},{"name":"v3.2.0","sha":"75a750449fdf610da8468b29fb5fc3671feb807b","kind":"tag","published_at":"2020-06-22T14:30:06.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.2.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.2.0/manifests"},{"name":"v3.1.0","sha":"5f452a780727fdf904c33d642a1e0c8f98d4383a","kind":"tag","published_at":"2020-05-15T19:10:44.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.1.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.1.0/manifests"},{"name":"v3.0.2","sha":"2f6edcb36c0af0aa12a9b7e801774c1539008aa3","kind":"tag","published_at":"2020-03-19T12:49:52.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.0.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"18e37d35959401e581b63b638268e66ca6eb4161","kind":"tag","published_at":"2020-02-23T13:28:54.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.0.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"4613f17f7c0e0983168f07445d3633a3ea62818c","kind":"tag","published_at":"2020-02-15T12:40:41.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.0.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.0.0/manifests"},{"name":"v3.0.0-next.1","sha":"0bcf41e404cbb54de7b0b52d32ec335033bd8b61","kind":"tag","published_at":"2020-01-19T12:52:12.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v3.0.0-next.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v3.0.0-next.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.0.0-next.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v3.0.0-next.1/manifests"},{"name":"v2.1.9","sha":"4978cfd1fe46ca4454f9adb904b9179e8d96cfb8","kind":"tag","published_at":"2019-05-25T14:25:19.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.1.9","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.1.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.9/manifests"},{"name":"v2.1.5","sha":"c032d55e44ca6a27341559e70b0e3af94d98757b","kind":"tag","published_at":"2019-05-18T23:07:31.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.1.5","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.5/manifests"},{"name":"v2.1.4","sha":"a1e73a3e616147f21a1c78408f2e599d664c08d3","kind":"tag","published_at":"2019-05-18T23:07:30.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.1.4","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.4/manifests"},{"name":"v2.1.3","sha":"e7d823c501b2f6c5db5f4dd6c8d689f55d82671f","kind":"tag","published_at":"2019-05-18T23:07:29.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.1.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.3/manifests"},{"name":"v2.1.2","sha":"0e56f37f320793ade4673cb2eaad159bc81d4a8a","kind":"tag","published_at":"2019-05-18T23:07:28.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.1.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.2/manifests"},{"name":"v2.1.0","sha":"46e25b587fbc23fd4b17e07237c013535332d2fc","kind":"tag","published_at":"2019-05-18T23:07:27.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.1.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.0/manifests"},{"name":"v2.1.1","sha":"bb8fd71fcb054b7cc0648ef85863fc1c336f3d07","kind":"tag","published_at":"2019-05-18T23:07:27.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.1.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.1/manifests"},{"name":"v2.0.8","sha":"24befb70d8c0f64c4b5e6c6a7939c9cf2f14c1c0","kind":"tag","published_at":"2019-05-18T23:07:27.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.0.8","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.0.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.8/manifests"},{"name":"v2.0.7","sha":"23efba5aaf76ec104419c7991e1dcaa417d030c8","kind":"tag","published_at":"2019-05-18T23:07:26.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.0.7","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.7/manifests"},{"name":"v2.0.6","sha":"fc79a58d5b980ace450e35411b2558aead5b1f24","kind":"tag","published_at":"2019-05-18T23:07:25.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.0.6","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.6/manifests"},{"name":"v2.0.5","sha":"94c76dd3b13233a38ee8791e7b10f4ed30c841f1","kind":"tag","published_at":"2019-05-18T23:07:23.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.0.5","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.5/manifests"},{"name":"v2.0.4","sha":"bdd3562197417a0ac2fb995ec78ffe1f77d1bcb9","kind":"tag","published_at":"2019-05-18T23:07:22.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.0.4","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.4/manifests"},{"name":"v2.0.3","sha":"7652184ba2c9284a8c840c027ca1a344a323247a","kind":"tag","published_at":"2019-05-18T23:07:21.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.0.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"450703bb28372d2391cd7c7fd20c3fd1e0812b34","kind":"tag","published_at":"2019-05-18T23:07:20.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.0.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.2/manifests"},{"name":"v2.0.1","sha":"1d051a3a6e248f3d5186ba7d085312524b4d9099","kind":"tag","published_at":"2019-05-18T23:07:20.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.0.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.1/manifests"},{"name":"v1.6.6","sha":"86cd9f8fe4eea06d6efe67bba9af406bcb6c13b2","kind":"tag","published_at":"2019-05-18T23:07:19.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.6.6","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.6.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.6/manifests"},{"name":"v2.0.0","sha":"b0df022721bae607cb408620f6d3e95218be4dd1","kind":"tag","published_at":"2019-05-18T23:07:19.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.0.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.0.0/manifests"},{"name":"v1.6.5","sha":"f4116befb49b2b4e6b527b4fbf333a12db92b2a1","kind":"tag","published_at":"2019-05-18T23:07:18.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.6.5","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.6.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.5/manifests"},{"name":"v1.6.4","sha":"75899573d83e0621b762889037853d8a51f926a3","kind":"tag","published_at":"2019-05-18T23:07:17.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.6.4","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.6.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.4/manifests"},{"name":"v1.6.3","sha":"a35f946522efdde8e088aac325493d179d2dc796","kind":"tag","published_at":"2019-05-18T23:07:16.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.6.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.6.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.3/manifests"},{"name":"v1.6.2","sha":"b0ba7e66a867fe8b65914d7c515190e4cf73e3a1","kind":"tag","published_at":"2019-05-18T23:07:15.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.6.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.2/manifests"},{"name":"v1.6.1","sha":"a494cb73b6bbb486224411960f3b06635b93a19b","kind":"tag","published_at":"2019-05-18T23:07:14.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.6.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.1/manifests"},{"name":"v1.6.0","sha":"dfb567a784be5f06514a55b3cb059b92c0a18a26","kind":"tag","published_at":"2019-05-18T23:07:13.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.6.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.6.0/manifests"},{"name":"v1.5.2","sha":"43dbb4161085f0fb650ba8e896f0a0af8b955fb6","kind":"tag","published_at":"2019-05-18T23:07:12.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.5.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.5.2/manifests"},{"name":"v1.5.2.pre","sha":"6dac2957b162c300e4d8a0a94b4ae1cd56d9295e","kind":"tag","published_at":"2019-05-18T23:07:12.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.5.2.pre","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.5.2.pre","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.5.2.pre","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.5.2.pre/manifests"},{"name":"v1.5.1","sha":"424d16ee87785871e3751dfcf82d8be518b8da0c","kind":"tag","published_at":"2019-05-18T23:07:11.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.5.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.5.1/manifests"},{"name":"v1.5.0","sha":"2f647f474cf01e6f04e7379e67afa3f8732f1ac1","kind":"tag","published_at":"2019-05-18T23:07:11.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.5.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.5.0/manifests"},{"name":"v1.4.3","sha":"aa2a87314a7ee227f6726a8a708229deb866cfe7","kind":"tag","published_at":"2019-05-18T23:07:10.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.4.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.4.3/manifests"},{"name":"v1.4.2","sha":"c3829d8043179a20e2a1cc7f5826470b62bb6821","kind":"tag","published_at":"2019-05-18T23:07:09.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.4.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"9af9bf8122b8123fde5bfb1c7d2fdc48f9eb38e7","kind":"tag","published_at":"2019-05-18T23:07:08.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.4.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"beef268a21d882d562d514d9be9553539bbabb00","kind":"tag","published_at":"2019-05-18T23:07:07.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.4.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.4.0/manifests"},{"name":"v1.3.3","sha":"c4e0970414ffb39b1fb18601b17e047ddc15d9ec","kind":"tag","published_at":"2019-05-18T23:07:06.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.3.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.3.3/manifests"},{"name":"v1.3.2","sha":"1b9ff387d52559159e62b3f31bb9c824f2fdade2","kind":"tag","published_at":"2019-05-18T23:07:05.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.3.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.3.2/manifests"},{"name":"v1.3.1","sha":"dc4728ccce02a8987ed4a72196c560957e013815","kind":"tag","published_at":"2019-05-18T23:07:05.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.3.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"2c7e1ab6183e124a6ca2fe3e899554fd99025289","kind":"tag","published_at":"2019-05-18T23:07:04.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.3.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.3.0/manifests"},{"name":"v1.3.0.beta","sha":"ce6005ae60d3236d43056a893a68b9c60e58b3b0","kind":"tag","published_at":"2019-05-18T23:07:04.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.3.0.beta","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.3.0.beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.3.0.beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.3.0.beta/manifests"},{"name":"v1.2.4","sha":"f56ffb27baa1b977713a71624ff9fa176fff064f","kind":"tag","published_at":"2019-05-18T23:07:03.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.2.4","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"840e0f419d18ccd7e506894eb76404671ae038d5","kind":"tag","published_at":"2019-05-18T23:07:03.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.2.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"f58bd054d9abd4f32b9e0339c946e367027bf2f2","kind":"tag","published_at":"2019-05-18T23:07:02.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.2.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.2/manifests"},{"name":"v1.2.1","sha":"5852c0081cbd9c97ceb17b1a98d45715f8a61ac2","kind":"tag","published_at":"2019-05-18T23:07:00.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.2.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.1/manifests"},{"name":"v1.2.0.beta","sha":"4dfe664e9f445a51c27912ba27c72687ab4bf05c","kind":"tag","published_at":"2019-05-18T23:06:59.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.2.0.beta","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.2.0.beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.0.beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.0.beta/manifests"},{"name":"v1.2.0","sha":"140c67621cc9fd8bea23a36063147b2e5465dba3","kind":"tag","published_at":"2019-05-18T23:06:58.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.2.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.2.0/manifests"},{"name":"v1.1.5","sha":"ca50a156b4f769a53359c27d9834e065166f7e76","kind":"tag","published_at":"2019-05-18T23:06:57.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.1.5","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.5/manifests"},{"name":"v1.1.6","sha":"4b57cc421d22a5ba1368b7e0a153b256eb80634c","kind":"tag","published_at":"2019-05-18T23:06:57.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.1.6","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.1.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.6/manifests"},{"name":"v1.1.2","sha":"6db2b34f5189f9fe9786996e08995270bff4fc8f","kind":"tag","published_at":"2019-05-18T23:06:56.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.1.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.2/manifests"},{"name":"v1.1.4","sha":"6821fa03dc58404512f6cef40d32b05f33a1cb50","kind":"tag","published_at":"2019-05-18T23:06:56.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.1.4","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.4/manifests"},{"name":"v1.1.3","sha":"0fe8be3f99bebd0a02784fdc2d35ecada0d29755","kind":"tag","published_at":"2019-05-18T23:06:56.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.1.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.3/manifests"},{"name":"v1.1.1","sha":"f73ae68e25fd518284af0dd3d201178dc01e8e69","kind":"tag","published_at":"2019-05-18T23:06:55.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.1.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1.1/manifests"},{"name":"v1.1","sha":"8fb47b9f3273832bad0c794922ce3b3a8a703550","kind":"tag","published_at":"2019-05-18T23:06:55.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.1/manifests"},{"name":"v1.0.1","sha":"bc17261576ead7e3a22c2da9393169456a72edad","kind":"tag","published_at":"2019-05-18T23:06:54.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.0.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.0.1/manifests"},{"name":"v1.0.2","sha":"1e4d835bf17f22da9c6f0aee619b99e2f6d075dd","kind":"tag","published_at":"2019-05-18T23:06:54.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.0.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.0.2/manifests"},{"name":"v1.0","sha":"17729fe57cf3453871476077de29ef061344b2a7","kind":"tag","published_at":"2019-05-18T23:06:54.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v1.0","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v1.0/manifests"},{"name":"v0.9.5","sha":"1b06efa66ce126e99199cd9aa6396f1eb77818db","kind":"tag","published_at":"2019-05-18T23:06:53.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.9.5","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.9.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.9.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.9.5/manifests"},{"name":"v0.9.2","sha":"c81d289cfbdd51627cfcaff083d1a451593f32fd","kind":"tag","published_at":"2019-05-18T23:06:52.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.9.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.9.2/manifests"},{"name":"v0.9.4","sha":"6222218b1badebf2e1f464ba2edf0734a6e0e414","kind":"tag","published_at":"2019-05-18T23:06:52.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.9.4","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.9.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.9.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.9.4/manifests"},{"name":"v0.8.3","sha":"0ffb8bf9784d86c63a7ee044ecbe1ae00b7e03aa","kind":"tag","published_at":"2019-05-18T23:06:51.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.8.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.8.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.8.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.8.3/manifests"},{"name":"v0.9.1","sha":"0e5cabe3c5b3825a0aebe626a0f82f808466d768","kind":"tag","published_at":"2019-05-18T23:06:51.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.9.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.9.1/manifests"},{"name":"v0.9","sha":"eee0152d7a1b9c3dabc2ee2218cef72bb38090ae","kind":"tag","published_at":"2019-05-18T23:06:51.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.9","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.9/manifests"},{"name":"v0.8.1","sha":"ace72bb80edd56785d88e423d24419637895d123","kind":"tag","published_at":"2019-05-18T23:06:50.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.8.1","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.8.1/manifests"},{"name":"v0.8.2","sha":"85bfb1456cd3331346bd14614121befe17781d31","kind":"tag","published_at":"2019-05-18T23:06:50.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.8.2","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.8.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.8.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.8.2/manifests"},{"name":"v0.6","sha":"8618490c270d43ade286a5d8b8c4c5e6889e4d87","kind":"tag","published_at":"2019-05-18T23:06:49.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.6","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.6/manifests"},{"name":"v0.8","sha":"8d0d0a85bc87214b3e0eafbf4f068bec17200d81","kind":"tag","published_at":"2019-05-18T23:06:49.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.8","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.8/manifests"},{"name":"v0.7","sha":"ac98de6042b82e77af70971e7568f05b38c8aaf7","kind":"tag","published_at":"2019-05-18T23:06:49.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.7","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.7/manifests"},{"name":"v0.5","sha":"5935dba44f066fab983a72128d2f111a81f0100c","kind":"tag","published_at":"2019-05-18T23:06:48.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.5","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.5/manifests"},{"name":"v0.4","sha":"cadd178d6dfaa96a2aaf4e0384bf6ff6032334bd","kind":"tag","published_at":"2019-05-18T23:06:33.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.4","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.4/manifests"},{"name":"v0.3","sha":"25bf93ad2af657e571a1deba29fc60fd7d4805b5","kind":"tag","published_at":"2019-05-18T23:06:20.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v0.3","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v0.3/manifests"},{"name":"v2.1.8","sha":"b7f2562da1ee9067baf90334955a753e92010347","kind":"tag","published_at":"2017-01-07T17:40:08.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.1.8","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.1.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.8/manifests"},{"name":"v2.1.7","sha":"6b86c9f72a849feb35f6d646ecde45dcbd8b5d6a","kind":"commit","published_at":"2015-02-17T15:22:34.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.1.7","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.1.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.7/manifests"},{"name":"v2.1.6","sha":"23bdb2bfcfec16666301020f8d3ef1f90af12955","kind":"commit","published_at":"2014-02-23T14:50:14.000Z","download_url":"https://codeload.github.com/dnsjava/dnsjava/tar.gz/v2.1.6","html_url":"https://github.com/dnsjava/dnsjava/releases/tag/v2.1.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnsjava%2Fdnsjava/tags/v2.1.6/manifests"}]},"repo_metadata_updated_at":"2023-12-03T05:21:05.066Z","dependent_packages_count":335,"downloads":null,"downloads_period":null,"dependent_repos_count":2558,"rankings":{"downloads":null,"dependent_repos_count":0.20823113656158335,"dependent_packages_count":0.23826447356565789,"stargazers_count":12.527105086646179,"forks_count":13.12436804853387,"docker_downloads_count":0.45029983281442404,"average":5.309653715624343},"purl":"pkg:maven/dnsjava/dnsjava","advisories":[{"uuid":"GSA_kwCzR0hTQS1jZnh3LTRoNzgtaDdmd84AA-E1","url":"https://github.com/advisories/GHSA-cfxw-4h78-h7fw","title":"DNSJava DNSSEC Bypass","description":"### Summary\n\nRecords in DNS replies are not checked for their relevance to the query, allowing an attacker to respond with RRs from different zones.\n\n### Details\n\nDNS Messages are not authenticated. They do not guarantee that\n\n- received RRs are authentic\n- not received RRs do not exist\n- all or any received records in a response relate to the request\n\nApplications utilizing DNSSEC generally expect these guarantees to be met, however DNSSEC by itself only guarantees the first two.\nTo meet the third guarantee, resolvers generally follow an (undocumented, as far as RFCs go) algorithm such as: (simplified, e.g. lacks DNSSEC validation!)\n\n1. denote by `QNAME` the name you are querying (e.g. fraunhofer.de.), and initialize a list of aliases\n2. if the ANSWER section contains a valid PTR RRSet for `QNAME`, return it (and optionally return the list of aliases as well)\n3. if the ANSWER section contains a valid CNAME RRSet for `QNAME`, add it to the list of aliases. Set `QNAME` to the CNAME's target and go to 2.\n4. Verify that `QNAME` does not have any PTR, CNAME and DNAME records using valid NSEC or NSEC3 records. Return `null`.\n\nNote that this algorithm relies on NSEC records and thus requires a considerable portion of the DNSSEC specifications to be implemented. For this reason, it cannot be performed by a DNS client (aka application) and is typically performed as part of the resolver logic.\n\ndnsjava does not implement a comparable algorithm, and the provided APIs instead return either\n\n- the received DNS message itself (e.g. when using a ValidatingResolver such as in [this](https://github.com/dnsjava/dnsjava/blob/master/EXAMPLES.md#dnssec-resolver) example), or\n- essentially just the contents of its ANSWER section (e.g. when using a LookupSession such as in [this](https://github.com/dnsjava/dnsjava/blob/master/EXAMPLES.md#simple-lookup-with-a-resolver) example)\n\nIf applications blindly filter the received results for RRs of the desired record type (as seems to be typical usage for dnsjava), a rogue recursive resolver or (on UDP/TCP connections) a network attacker can\n\n- In addition to the actual DNS response, add RRs irrelevant to the query but of the right datatype, e.g. from another zone, as long as that zone is correctly using DNSSEC, or\n- completely exchange the relevant response records\n\n### Impact\n\nDNS(SEC) libraries are usually used as part of a larger security framework.\nTherefore, the main misuses of this vulnerability concern application code, which might take the returned records as authentic answers to the request.\nHere are three concrete examples of where this might be detrimental:\n\n- [RFC 6186](https://datatracker.ietf.org/doc/html/rfc6186) specifies that to connect to an IMAP server for a user, a mail user agent should retrieve certain SRV records and send the user's credentials to the specified servers. Exchanging the SRV records can be a tool to redirect the credentials.\n- When delivering mail via SMTP, MX records determine where to deliver the mails to. Exchanging the MX records might lead to information disclosure. Additionally, an exchange of TLSA records might allow attackers to intercept TLS traffic.\n- Some research projects like [LIGHTest](https://www.lightest.eu/) are trying to manage CA trust stores via URI and SMIMEA records in the DNS. Exchanging these allows manipulating the root of trust for dependent applications.\n\n### Mitigations\n\nAt this point, the following mitigations are recommended:\n\n- When using a ValidatingResolver, ignore any Server indications of whether or not data was available (e.g. NXDOMAIN, NODATA, ...).\n- For APIs returning RRs from DNS responses, filter the RRs using an algorithm such as the one above. This includes e.g. `LookupSession.lookupAsync`.\n- Remove APIs dealing with raw DNS messages from the examples section or place a noticable warning above.","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2024-07-22T14:33:41.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":8.9,"cvss_vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:L","references":["https://github.com/dnsjava/dnsjava/security/advisories/GHSA-cfxw-4h78-h7fw","https://nvd.nist.gov/vuln/detail/CVE-2024-25638","https://github.com/dnsjava/dnsjava/commit/2073a0cdea2c560465f7ac0cc56f202e6fc39705","https://github.com/advisories/GHSA-cfxw-4h78-h7fw"],"source_kind":"github","identifiers":["GHSA-cfxw-4h78-h7fw","CVE-2024-25638"],"repository_url":"https://github.com/dnsjava/dnsjava","blast_radius":30.330314807269456,"packages":[{"versions":[{"first_patched_version":"3.6.0","vulnerable_version_range":"\u003c 3.6.0"}],"ecosystem":"maven","package_name":"dnsjava:dnsjava"}],"created_at":"2024-07-22T15:06:14.734Z","updated_at":"2025-03-24T03:09:04.943Z","epss_percentage":0.00114,"epss_percentile":0.25456},{"uuid":"GSA_kwCzR0hTQS1jcmpnLXc1N20tcnFxZs4AA-FL","url":"https://github.com/advisories/GHSA-crjg-w57m-rqqf","title":"DNSJava vulnerable to KeyTrap - Denial-of-Service Algorithmic Complexity Attacks","description":"### Impact\nUsers using the `ValidatingResolver` for DNSSEC validation can run into CPU exhaustion with specially crafted DNSSEC-signed zones.\n\n### Patches\nUsers should upgrade to dnsjava v3.6.0\n\n### Workarounds\nAlthough not recommended, only using a non-validating resolver, will remove the vulnerability. \n\n### References\nhttps://www.athene-center.de/en/keytrap\n","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2024-07-22T17:30:19.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":6.5,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","references":["https://github.com/dnsjava/dnsjava/security/advisories/GHSA-crjg-w57m-rqqf","https://github.com/dnsjava/dnsjava/commit/07ac36a11578cc1bce0cd8ddf2fe568f062aee78","https://github.com/dnsjava/dnsjava/commit/3ddc45ce8cdb5c2274e10b7401416f497694e1cf","https://nvd.nist.gov/vuln/detail/CVE-2023-50387","https://github.com/advisories/GHSA-8459-gg55-8qjj","https://github.com/advisories/GHSA-crjg-w57m-rqqf"],"source_kind":"github","identifiers":["GHSA-crjg-w57m-rqqf"],"repository_url":"https://github.com/dnsjava/dnsjava","blast_radius":22.15135351092713,"packages":[{"versions":[{"first_patched_version":null,"vulnerable_version_range":"\u003c= 2.0.0"}],"ecosystem":"maven","package_name":"org.jitsi:dnssecjava"},{"versions":[{"first_patched_version":"3.6.0","vulnerable_version_range":"\u003e= 3.5.0, \u003c 3.6.0"}],"ecosystem":"maven","package_name":"dnsjava:dnsjava"}],"created_at":"2024-07-22T18:05:40.952Z","updated_at":"2024-11-18T16:26:56.000Z","epss_percentage":null,"epss_percentile":null},{"uuid":"GSA_kwCzR0hTQS1tbXd4LXJqODctdmZncs4AA-E2","url":"https://github.com/advisories/GHSA-mmwx-rj87-vfgr","title":"DNSJava affected by KeyTrap - NSEC3 closest encloser proof can exhaust CPU resources","description":"### Impact\nUsers using the `ValidatingResolver` for DNSSEC validation can run into CPU exhaustion with specially crafted DNSSEC-signed zones.\n\n### Patches\nUsers should upgrade to dnsjava v3.6.0\n\n### Workarounds\nAlthough not recommended, only using a non-validating resolver, will remove the vulnerability.\n\n### References\nhttps://www.athene-center.de/en/keytrap\n","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2024-07-22T14:46:59.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":6.5,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","references":["https://github.com/dnsjava/dnsjava/security/advisories/GHSA-mmwx-rj87-vfgr","https://github.com/dnsjava/dnsjava/commit/711af79be3214f52daa5c846b95766dc0a075116","https://nvd.nist.gov/vuln/detail/CVE-2023-50868","https://github.com/advisories/GHSA-pv4h-p8jr-6cv2","https://github.com/advisories/GHSA-mmwx-rj87-vfgr"],"source_kind":"github","identifiers":["GHSA-mmwx-rj87-vfgr"],"repository_url":"https://github.com/dnsjava/dnsjava","blast_radius":22.15135351092713,"packages":[{"versions":[{"first_patched_version":null,"vulnerable_version_range":"\u003c= 2.0.0"}],"ecosystem":"maven","package_name":"org.jitsi:dnssecjava"},{"versions":[{"first_patched_version":"3.6.0","vulnerable_version_range":"\u003e= 3.5.0, \u003c 3.6.0"}],"ecosystem":"maven","package_name":"dnsjava:dnsjava"}],"created_at":"2024-07-22T15:06:13.942Z","updated_at":"2024-11-18T16:26:55.000Z","epss_percentage":null,"epss_percentile":null}],"docker_usage_url":"https://docker.ecosyste.ms/usage/maven/dnsjava:dnsjava","docker_dependents_count":2156,"docker_downloads_count":554121267,"usage_url":"https://repos.ecosyste.ms/usage/maven/dnsjava:dnsjava","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/maven/dnsjava:dnsjava/dependencies","status":null,"funding_links":[],"critical":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/dnsjava:dnsjava/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/dnsjava:dnsjava/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/dnsjava:dnsjava/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/dnsjava:dnsjava/related_packages","maintainers":[],"registry":{"name":"repo1.maven.org","url":"https://repo.maven.apache.org/maven2","ecosystem":"maven","default":true,"packages_count":517936,"maintainers_count":0,"namespaces_count":68848,"keywords_count":32053,"github":"maven-central","metadata":{"funded_packages_count":25044},"icon_url":"https://github.com/maven-central.png","created_at":"2022-07-21T16:40:13.074Z","updated_at":"2025-06-07T05:38:09.526Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/namespaces"}},"unique_repositories_count":91,"unique_repositories_count_past_30_days":35,"recent_issues":[{"uuid":"4807809950","node_id":"PR_kwDOGl3uh87tzSkX","number":237,"state":"open","title":"deps(deps): bump the other-deps group across 1 directory with 48 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-07-04T05:40:54.000Z","updated_at":"2026-07-04T05:41:02.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"other-deps","update_count":48,"packages":[{"name":"org.yaml:snakeyaml","old_version":"2.2","new_version":"2.6"},{"name":"org.slf4j:slf4j-api","old_version":"1.7.15","new_version":"2.0.18"},{"name":"org.apache.logging.log4j:log4j-api","old_version":"2.25.4","new_version":"2.26.1"},{"name":"org.apache.logging.log4j:log4j-core","old_version":"2.25.4","new_version":"2.26.1"},{"name":"org.apache.logging.log4j:log4j-1.2-api","old_version":"2.25.4","new_version":"2.26.1"},{"name":"org.apache.logging.log4j:log4j-slf4j-impl","old_version":"2.25.4","new_version":"2.26.1"},{"name":"com.mysql:mysql-connector-j","old_version":"8.4.0","new_version":"9.7.0","repository_url":"https://github.com/mysql/mysql-connector-j"},{"name":"org.apache.hadoop:hadoop-client","old_version":"3.3.6","new_version":"3.5.0"},{"name":"org.apache.hadoop:hadoop-common","old_version":"3.3.6","new_version":"3.5.0"},{"name":"org.apache.hadoop:hadoop-hdfs","old_version":"3.3.6","new_version":"3.5.0"},{"name":"org.apache.hadoop:hadoop-mapreduce-client-core","old_version":"3.3.6","new_version":"3.5.0"},{"name":"com.alibaba.nacos:nacos-client","old_version":"2.1.2","new_version":"3.2.2","repository_url":"https://github.com/alibaba/nacos"},{"name":"com.alibaba:fastjson","old_version":"2.0.52","new_version":"2.0.62","repository_url":"https://github.com/alibaba/fastjson2"},{"name":"com.fasterxml.jackson.core:jackson-core","old_version":"2.21.4","new_version":"2.22.0","repository_url":"https://github.com/FasterXML/jackson-core"},{"name":"com.fasterxml.jackson.core:jackson-databind","old_version":"2.21.4","new_version":"2.22.0","repository_url":"https://github.com/FasterXML/jackson"},{"name":"com.jayway.jsonpath:json-path","old_version":"2.9.0","new_version":"3.0.0","repository_url":"https://github.com/jayway/JsonPath"},{"name":"com.google.protobuf:protobuf-java","old_version":"3.25.5","new_version":"4.35.1","repository_url":"https://github.com/protocolbuffers/protobuf"},{"name":"net.minidev:json-smart","old_version":"2.5.2","new_version":"2.6.0","repository_url":"https://github.com/netplex/json-smart-v2"},{"name":"net.minidev:accessors-smart","old_version":"2.5.0","new_version":"2.6.0","repository_url":"https://github.com/netplex/json-smart-v2"},{"name":"commons-net:commons-net","old_version":"3.10.0","new_version":"3.13.0","repository_url":"https://github.com/apache/commons-net"},{"name":"com.squareup.okio:okio","old_version":"3.4.0","new_version":"3.17.0","repository_url":"https://github.com/square/okio"},{"name":"commons-cli:commons-cli","old_version":"1.5.0","new_version":"1.11.0","repository_url":"https://github.com/apache/commons-cli"},{"name":"dnsjava:dnsjava","old_version":"3.6.0","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.codehaus.plexus:plexus-utils","old_version":"3.6.1","new_version":"4.0.3","repository_url":"https://github.com/codehaus-plexus/plexus-utils"},{"name":"at.yawk.lz4:lz4-java","old_version":"1.10.1","new_version":"1.11.0","repository_url":"https://github.com/yawkat/lz4-java"},{"name":"commons-io:commons-io","old_version":"2.15.1","new_version":"2.22.0"},{"name":"com.google.errorprone:error_prone_core","old_version":"2.31.0","new_version":"2.50.0","repository_url":"https://github.com/google/error-prone"},{"name":"org.codehaus.mojo:versions-maven-plugin","old_version":"2.14.2","new_version":"2.21.0","repository_url":"https://github.com/mojohaus/versions"},{"name":"org.apache.maven.plugins:maven-enforcer-plugin","old_version":"3.5.0","new_version":"3.6.3","repository_url":"https://github.com/apache/maven-enforcer"},{"name":"org.apache.maven.plugins:maven-pmd-plugin","old_version":"3.21.0","new_version":"3.28.0","repository_url":"https://github.com/apache/maven-pmd-plugin"},{"name":"org.jacoco:jacoco-maven-plugin","old_version":"0.8.12","new_version":"0.8.15","repository_url":"https://github.com/jacoco/jacoco"},{"name":"org.apache.maven.plugins:maven-compiler-plugin","old_version":"3.10.0","new_version":"3.15.0","repository_url":"https://github.com/apache/maven-compiler-plugin"},{"name":"org.apache.maven.plugins:maven-surefire-plugin","old_version":"3.0.0-M5","new_version":"3.6.0-M1","repository_url":"https://github.com/apache/maven-surefire"},{"name":"com.diffplug.spotless:spotless-maven-plugin","old_version":"2.23.0","new_version":"3.8.0","repository_url":"https://github.com/diffplug/spotless"},{"name":"org.apache.maven.plugins:maven-checkstyle-plugin","old_version":"3.1.2","new_version":"3.6.0","repository_url":"https://github.com/apache/maven-checkstyle-plugin"},{"name":"com.github.spotbugs:spotbugs-maven-plugin","old_version":"4.8.6.6","new_version":"4.10.2.0","repository_url":"https://github.com/spotbugs/spotbugs-maven-plugin"},{"name":"org.apache.maven.plugins:maven-shade-plugin","old_version":"3.5.1","new_version":"3.6.2","repository_url":"https://github.com/apache/maven-shade-plugin"},{"name":"org.scala-lang:scala-library","old_version":"2.12.7","new_version":"3.8.4","repository_url":"https://github.com/scala/scala3"},{"name":"org.apache.kafka:kafka-clients","old_version":"4.1.2","new_version":"4.3.1"},{"name":"com.fasterxml.jackson.core:jackson-annotations","old_version":"2.21","new_version":"2.22","repository_url":"https://github.com/FasterXML/jackson"},{"name":"com.h2database:h2","old_version":"2.2.224","new_version":"2.4.240","repository_url":"https://github.com/h2database/h2database"},{"name":"com.nimbusds:nimbus-jose-jwt","old_version":"10.0.2","new_version":"10.9.1"},{"name":"org.apache.maven.plugins:maven-assembly-plugin","old_version":"3.6.0","new_version":"3.8.0","repository_url":"https://github.com/apache/maven-assembly-plugin"},{"name":"org.apache.maven.plugins:maven-jar-plugin","old_version":"3.3.0","new_version":"3.5.0","repository_url":"https://github.com/apache/maven-jar-plugin"},{"name":"org.apache.paimon:paimon-flink-1.20","old_version":"1.4.1","new_version":"1.4.2"},{"name":"org.apache.paimon:paimon-flink-cdc","old_version":"1.4.1","new_version":"1.4.2"},{"name":"org.mongodb:mongodb-driver-sync","old_version":"4.11.1","new_version":"5.8.0","repository_url":"https://github.com/mongodb/mongo-java-driver"},{"name":"org.apache.kafka:connect-api","old_version":"3.6.1","new_version":"4.3.1"}],"path":null,"ecosystem":"maven"},"body":"Bumps the other-deps group with 48 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.yaml:snakeyaml](https://bitbucket.org/snakeyaml/snakeyaml) | `2.2` | `2.6` |\n| org.slf4j:slf4j-api | `1.7.15` | `2.0.18` |\n| org.apache.logging.log4j:log4j-api | `2.25.4` | `2.26.1` |\n| org.apache.logging.log4j:log4j-core | `2.25.4` | `2.26.1` |\n| org.apache.logging.log4j:log4j-1.2-api | `2.25.4` | `2.26.1` |\n| org.apache.logging.log4j:log4j-slf4j-impl | `2.25.4` | `2.26.1` |\n| [com.mysql:mysql-connector-j](https://github.com/mysql/mysql-connector-j) | `8.4.0` | `9.7.0` |\n| org.apache.hadoop:hadoop-client | `3.3.6` | `3.5.0` |\n| org.apache.hadoop:hadoop-common | `3.3.6` | `3.5.0` |\n| org.apache.hadoop:hadoop-hdfs | `3.3.6` | `3.5.0` |\n| org.apache.hadoop:hadoop-mapreduce-client-core | `3.3.6` | `3.5.0` |\n| [com.alibaba.nacos:nacos-client](https://github.com/alibaba/nacos) | `2.1.2` | `3.2.2` |\n| [com.alibaba:fastjson](https://github.com/alibaba/fastjson2) | `2.0.52` | `2.0.62` |\n| [com.fasterxml.jackson.core:jackson-core](https://github.com/FasterXML/jackson-core) | `2.21.4` | `2.22.0` |\n| [com.fasterxml.jackson.core:jackson-databind](https://github.com/FasterXML/jackson) | `2.21.4` | `2.22.0` |\n| [com.jayway.jsonpath:json-path](https://github.com/jayway/JsonPath) | `2.9.0` | `3.0.0` |\n| [com.google.protobuf:protobuf-java](https://github.com/protocolbuffers/protobuf) | `3.25.5` | `4.35.1` |\n| [net.minidev:json-smart](https://github.com/netplex/json-smart-v2) | `2.5.2` | `2.6.0` |\n| [net.minidev:accessors-smart](https://github.com/netplex/json-smart-v2) | `2.5.0` | `2.6.0` |\n| [commons-net:commons-net](https://github.com/apache/commons-net) | `3.10.0` | `3.13.0` |\n| [com.squareup.okio:okio](https://github.com/square/okio) | `3.4.0` | `3.17.0` |\n| [commons-cli:commons-cli](https://github.com/apache/commons-cli) | `1.5.0` | `1.11.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.0` | `3.6.5` |\n| [org.codehaus.plexus:plexus-utils](https://github.com/codehaus-plexus/plexus-utils) | `3.6.1` | `4.0.3` |\n| [at.yawk.lz4:lz4-java](https://github.com/yawkat/lz4-java) | `1.10.1` | `1.11.0` |\n| commons-io:commons-io | `2.15.1` | `2.22.0` |\n| [com.google.errorprone:error_prone_core](https://github.com/google/error-prone) | `2.31.0` | `2.50.0` |\n| [org.codehaus.mojo:versions-maven-plugin](https://github.com/mojohaus/versions) | `2.14.2` | `2.21.0` |\n| [org.apache.maven.plugins:maven-enforcer-plugin](https://github.com/apache/maven-enforcer) | `3.5.0` | `3.6.3` |\n| [org.apache.maven.plugins:maven-pmd-plugin](https://github.com/apache/maven-pmd-plugin) | `3.21.0` | `3.28.0` |\n| [org.jacoco:jacoco-maven-plugin](https://github.com/jacoco/jacoco) | `0.8.12` | `0.8.15` |\n| [org.apache.maven.plugins:maven-compiler-plugin](https://github.com/apache/maven-compiler-plugin) | `3.10.0` | `3.15.0` |\n| [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) | `3.0.0-M5` | `3.6.0-M1` |\n| [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless) | `2.23.0` | `3.8.0` |\n| [org.apache.maven.plugins:maven-checkstyle-plugin](https://github.com/apache/maven-checkstyle-plugin) | `3.1.2` | `3.6.0` |\n| [com.github.spotbugs:spotbugs-maven-plugin](https://github.com/spotbugs/spotbugs-maven-plugin) | `4.8.6.6` | `4.10.2.0` |\n| [org.apache.maven.plugins:maven-shade-plugin](https://github.com/apache/maven-shade-plugin) | `3.5.1` | `3.6.2` |\n| [org.scala-lang:scala-library](https://github.com/scala/scala3) | `2.12.7` | `3.8.4` |\n| org.apache.kafka:kafka-clients | `4.1.2` | `4.3.1` |\n| [com.fasterxml.jackson.core:jackson-annotations](https://github.com/FasterXML/jackson) | `2.21` | `2.22` |\n| [com.h2database:h2](https://github.com/h2database/h2database) | `2.2.224` | `2.4.240` |\n| [com.nimbusds:nimbus-jose-jwt](https://bitbucket.org/connect2id/nimbus-jose-jwt) | `10.0.2` | `10.9.1` |\n| [org.apache.maven.plugins:maven-assembly-plugin](https://github.com/apache/maven-assembly-plugin) | `3.6.0` | `3.8.0` |\n| [org.apache.maven.plugins:maven-jar-plugin](https://github.com/apache/maven-jar-plugin) | `3.3.0` | `3.5.0` |\n| org.apache.paimon:paimon-flink-1.20 | `1.4.1` | `1.4.2` |\n| org.apache.paimon:paimon-flink-cdc | `1.4.1` | `1.4.2` |\n| [org.mongodb:mongodb-driver-sync](https://github.com/mongodb/mongo-java-driver) | `4.11.1` | `5.8.0` |\n| org.apache.kafka:connect-api | `3.6.1` | `4.3.1` |\n\n\nUpdates `org.yaml:snakeyaml` from 2.2 to 2.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/015ab57b3a789f85cf8967f6f3431035d928d9bc\"\u003e\u003ccode\u003e015ab57\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/4795519ef773da23c8816a4e932f9aaffd630f8c\"\u003e\u003ccode\u003e4795519\u003c/code\u003e\u003c/a\u003e Update info\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/9c36c69034617a1c2e06b5b9b6da4073416279b8\"\u003e\u003ccode\u003e9c36c69\u003c/code\u003e\u003c/a\u003e Introduce devcontainer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/0c5b3e513a8a3971f7c97404f73fadebb63b73c0\"\u003e\u003ccode\u003e0c5b3e5\u003c/code\u003e\u003c/a\u003e fix: add debug level to internal logger\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/a65b13170d1b221af062d6aa90fd7741ed7ea7cd\"\u003e\u003ccode\u003ea65b131\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into devcontainers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/788a98b92bfd1696e95a0a48eb1d652d80660149\"\u003e\u003ccode\u003e788a98b\u003c/code\u003e\u003c/a\u003e Update changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/556b4bfec56355987f292f0ee515798b3a2eb3e0\"\u003e\u003ccode\u003e556b4bf\u003c/code\u003e\u003c/a\u003e Add info for devcontainer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/0828c39da732f89844c0c66d7f55169417f8cd16\"\u003e\u003ccode\u003e0828c39\u003c/code\u003e\u003c/a\u003e ops: migrate deployment from OSSRH to Central Portal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/30d6a3a64809f0f6d3d9fd901a85b7c3cda94930\"\u003e\u003ccode\u003e30d6a3a\u003c/code\u003e\u003c/a\u003e Add a test for issue 1108\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/2da4c6d8bfe0590dab56a5319366dc3b6558b9b5\"\u003e\u003ccode\u003e2da4c6d\u003c/code\u003e\u003c/a\u003e Remove unrelated code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/branches/compare/snakeyaml-2.6..snakeyaml-2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.slf4j:slf4j-api` from 1.7.15 to 2.0.18\n\nUpdates `org.apache.logging.log4j:log4j-api` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-core` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-1.2-api` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-slf4j-impl` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-core` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-1.2-api` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-slf4j-impl` from 2.25.4 to 2.26.1\n\nUpdates `com.mysql:mysql-connector-j` from 8.4.0 to 9.7.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mysql/mysql-connector-j/blob/release/9.x/CHANGES\"\u003ecom.mysql:mysql-connector-j's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003ch1\u003e\u003ca href=\"https://dev.mysql.com/doc/relnotes/connector-j/en/\"\u003ehttps://dev.mysql.com/doc/relnotes/connector-j/en/\u003c/a\u003e\u003c/h1\u003e\n\u003cp\u003eVersion 9.7.0\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#119863 (Bug#38951042), Inaccurate decoding of negative TIME durations in Binary Protocol (Cursor Mode).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eWL#17215, Implement JDBC 4.3/4.5 Statement/Connection.enquote* methods.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#119245 (Bug#38599240), Select into fix breaks queries with 'into' in them. (reopened)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#119659 (Bug#38916595), BinaryResultsetReader fails to consume EOF packet after column definitions when EOF is not deprecated.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eVersion 9.6.0\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#118002 (Bug#37843004), The setFetchSize() method in the Statement class may have a potential bug.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#113130 (Bug#36043125), getGeneratedKeys() returns a zero resultset with non-key-generating statements.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#113336 (Bug#36080226), Inconsistent getUpdateCount() Behavior with allowMultiQueries.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#118234 (Bug#37975837), A potential bugs in Mysql Connector/J.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#113413 (Bug#36107426), Connection.changeUser cannot be done after DriverManager.loginTimeout elapses.\nThanks to Kazuhisa Kawashima for his contribution.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#119271 (Bug#38599496), Connector/J fails to accept legacy value zeroDateTimeBehavior=convertToNull on multi-host URLs (failover).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#119245 (Bug#38599240), Select into fix breaks queries with 'into' in them.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eVersion 9.5.0\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#72036 (Bug#18403804), XA isSameRM() shouldn't take database into account.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#62693 (Bug#16722068), XAConnection savepoint capability.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#81128 (Bug#23146631), Master host list overwritten by slave list when loadBalanceConnectionGroup used.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#19887224, RUNNING THE TEST SUITE WITH SOCKSPROXY* PROPERTIES HANGS IN TEST TESTBUG56429.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#98699 (Bug#30932850), Allow empty keyStore file for keyStoreTypes that do not require files.\nThanks to Kolbe Kegel for his contribution.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#118938 (Bug#38396227), DatabaseMetaDataInformationSchema#getSchemas has a bug.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#99292 (Bug#31195955), Contribution: Support Windows time zone 'Coordinated Universal Time'.\nThanks to Frédéric Barrière for his contribution.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#107094 (Bug#34104230), NullPointerException when calling equals with null on MultiHostConnectionProxy.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/0aade1f13bcc98faf7dda5c02e782481eb291f62\"\u003e\u003ccode\u003e0aade1f\u003c/code\u003e\u003c/a\u003e Fix for Bug#119863 (Bug#38951042), Inaccurate decoding of negative TIME durat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/b6d5baabb5a9c4d01fccaafde032e8356b0ab5b8\"\u003e\u003ccode\u003eb6d5baa\u003c/code\u003e\u003c/a\u003e Update for GPL license book.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/a7cc5a9c8ec1c5ca7dcf97627935052c768a910e\"\u003e\u003ccode\u003ea7cc5a9\u003c/code\u003e\u003c/a\u003e Fix for DateTimeTest failures after some of the work done for WL#16669 in MyS...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/6a0c818f9619291251b33a868d4f8b0d70b676cb\"\u003e\u003ccode\u003e6a0c818\u003c/code\u003e\u003c/a\u003e WL#17215, Implement JDBC 4.3/4.5 Statement/Connection.enquote* methods.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/5f96e85b0b0ff3fc9326fb346e05c88e45af02a7\"\u003e\u003ccode\u003e5f96e85\u003c/code\u003e\u003c/a\u003e Fix for Bug#119245 (Bug#38599240), Select into fix breaks queries with 'into'...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/8d779fc31cb87906e86e7ea7dd316ed2778f85cd\"\u003e\u003ccode\u003e8d779fc\u003c/code\u003e\u003c/a\u003e Fix for Bug#119659 (Bug#38916595), BinaryResultsetReader fails to consume EOF...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/139117975bb31e8fb5a74887db23bbc6eda9ba92\"\u003e\u003ccode\u003e1391179\u003c/code\u003e\u003c/a\u003e Copyright header year bump.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/5c764b4b30b8aaa244665951146787e6b20f0639\"\u003e\u003ccode\u003e5c764b4\u003c/code\u003e\u003c/a\u003e Post-release version bump.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/fdef61f4af21fa9e0ac334ff0664ec754c164cc0\"\u003e\u003ccode\u003efdef61f\u003c/code\u003e\u003c/a\u003e Update copyright year.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/43aced76f8e2a261f7eca62d3715ecf932108753\"\u003e\u003ccode\u003e43aced7\u003c/code\u003e\u003c/a\u003e Update for GPL license book.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mysql/mysql-connector-j/compare/8.4.0...9.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.hadoop:hadoop-client` from 3.3.6 to 3.5.0\n\nUpdates `org.apache.hadoop:hadoop-common` from 3.3.6 to 3.5.0\n\nUpdates `org.apache.hadoop:hadoop-hdfs` from 3.3.6 to 3.5.0\n\nUpdates `org.apache.hadoop:hadoop-mapreduce-client-core` from 3.3.6 to 3.5.0\n\nUpdates `com.alibaba.nacos:nacos-client` from 2.1.2 to 3.2.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/alibaba/nacos/releases\"\u003ecom.alibaba.nacos:nacos-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.2 (May 29th, 2026)\u003c/h2\u003e\n\u003cp\u003eNacos 3.2.2 is mainly a bugfix and experience-improvement release for the 3.2 series.\u003c/p\u003e\n\u003cp\u003eThis release focuses on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eConsole experience improvements for Config, Naming, MCP, Skill, AI resources, and namespace workflows.\u003c/li\u003e\n\u003cli\u003eStability and compatibility fixes across Config, Naming, plugins, startup scripts, and AI resource handling.\u003c/li\u003e\n\u003cli\u003eAI Registry import, discovery, publishing, subscription, and security improvements.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor AI Registry and Console users, this release adds or improves:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImporting AI resources from operator-configured external registries.\u003c/li\u003e\n\u003cli\u003eSkill well-known discovery, Skill subscription, and latest protocol adapter support.\u003c/li\u003e\n\u003cli\u003eConfig diff confirmation, Prompt Markdown download, and Skill upload lifecycle improvements.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIt also fixes bugs across Config, Naming, Console, MCP, Skill, plugins, and client-side watch handling.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eDetailed changes in this release:\u003c/p\u003e\n\u003ch2\u003eFeature\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14695\"\u003e#14695\u003c/a\u003e Support label-based matching for Config gray rules.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14848\"\u003e#14848\u003c/a\u003e Add Prompt version download as Markdown.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14907\"\u003e#14907\u003c/a\u003e Support specifying a target version when uploading Skills.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14985\"\u003e#14985\u003c/a\u003e Add persistent instance deregistration support in Console v3.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15022\"\u003e#15022\u003c/a\u003e Support optional Skill auto-publish after review.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15031\"\u003e#15031\u003c/a\u003e Extend nacos.functionMode with microservice and ai modes.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15142\"\u003e#15142\u003c/a\u003e Support drag-and-drop ZIP upload and batch Skill upload.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15183\"\u003e#15183\u003c/a\u003e Support importing AI resources from operator-configured external registries, including MCP resources, Skill well-known resources, importer APIs, SPI models, built-in presets, and source-based import UI.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15234\"\u003e#15234\u003c/a\u003e Support commit messages when uploading AI skills.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15247\"\u003e#15247\u003c/a\u003e Support the latest Skill well-known protocol in the registry adapter.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15263\"\u003e#15263\u003c/a\u003e Add Skill subscription support and refactor AgentSpec subscription to HTTP polling with 304 handling.\u003c/p\u003e\n\u003ch2\u003eEnhancement/Refactor\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14833\"\u003e#14833\u003c/a\u003e\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15221\"\u003e#15221\u003c/a\u003e Route AI resource version trace logging through trace events and the default plugin.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14911\"\u003e#14911\u003c/a\u003e Split LDAP authentication into an optional plugin and package the LDAP plugin JAR.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14983\"\u003e#14983\u003c/a\u003e Enforce non-frontmatter Markdown body content during Skill validation.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15059\"\u003e#15059\u003c/a\u003e Add the reviewed version status after pipeline approval for Skill versions.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15066\"\u003e#15066\u003c/a\u003e Harden AgentSpec ZIP parsing with Zip Slip, Zip Bomb, and entry-count defenses.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15138\"\u003e#15138\u003c/a\u003e Add Config publish diff confirmation in the new Console.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15145\"\u003e#15145\u003c/a\u003e Restrict forcePublish to valid Skill states and add pipeline stale flags for re-edit.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15164\"\u003e#15164\u003c/a\u003e Make Skill ZIP entry and size limits configurable.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15165\"\u003e#15165\u003c/a\u003e Parallelize AgentSpec storage writes to align with Skill behavior.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15258\"\u003e#15258\u003c/a\u003e Enable reviewed status by default for the AI publish pipeline.\u003c/p\u003e\n\u003ch2\u003eBugFix\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/cdf4e1b6aa76d50839a0b8d3c8806430d14fef86\"\u003e\u003ccode\u003ecdf4e1b\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14122\"\u003e#14122\u003c/a\u003e] Skip unsupported skills.sh sources (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15271\"\u003e#15271\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/fe962a65ca0ff81ea0b38d5e143ed9c953b45439\"\u003e\u003ccode\u003efe962a6\u003c/code\u003e\u003c/a\u003e Stabilize auth and agent spec cache tests (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15270\"\u003e#15270\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/9299084cbf44525ff1817f0fcd246442933085a6\"\u003e\u003ccode\u003e9299084\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15087\"\u003e#15087\u003c/a\u003e] Upgrade safe dependencies and enable default AI importers (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15\"\u003e#15\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/4ac3b7dcbc3eb732314fa54e15b23c9494d27b55\"\u003e\u003ccode\u003e4ac3b7d\u003c/code\u003e\u003c/a\u003e Add since annotations for skill subscription APIs (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15267\"\u003e#15267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/2f290dbc5025aee1128764c0e97ac877bb306546\"\u003e\u003ccode\u003e2f290db\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15258\"\u003e#15258\u003c/a\u003e] Enable reviewed status by default (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15259\"\u003e#15259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/0a69ba2430b7a35d0a5f400236476f46b3999442\"\u003e\u003ccode\u003e0a69ba2\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15263\"\u003e#15263\u003c/a\u003e] Refactor AgentSpec subscription to HTTP polling with 304, and ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/9136e9864f431e53b443a736b5f8e1ea3c8afe4b\"\u003e\u003ccode\u003e9136e98\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Since\"\u003e\u003ccode\u003e@​Since\u003c/code\u003e\u003c/a\u003e annotations for public APIs (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15266\"\u003e#15266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/27a14fb47a65a96fc679dfcd60df2227a73890b8\"\u003e\u003ccode\u003e27a14fb\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14992\"\u003e#14992\u003c/a\u003e] Add v3 naming APIs to DistroFilter (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15262\"\u003e#15262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/5932ad2811060b40c28f4982ef7df171ffe0e604\"\u003e\u003ccode\u003e5932ad2\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15138\"\u003e#15138\u003c/a\u003e] Add config publish diff confirmation (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15261\"\u003e#15261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/6c996d167a99bdf7d626ffec7529f97c9e36b45f\"\u003e\u003ccode\u003e6c996d1\u003c/code\u003e\u003c/a\u003e fix(logging): bind Logger to the declaring class in four places (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15257\"\u003e#15257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/alibaba/nacos/compare/2.1.2...3.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.alibaba:fastjson` from 2.0.52 to 2.0.62\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/alibaba/fastjson2/releases\"\u003ecom.alibaba:fastjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003efastjson 2.0.61版本发布\u003c/h2\u003e\n\u003ch1\u003eFASTJSON 2.0.61 Release Notes\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eRelease Date:\u003c/strong\u003e 07 Feb 2026\n\u003cstrong\u003eTag:\u003c/strong\u003e 2.0.61 (170f71f)\u003c/p\u003e\n\u003ch2\u003eOverview\u003c/h2\u003e\n\u003cp\u003eThis is a regularly scheduled maintenance release with feature enhancements, performance improvements, and bug fixes. Users should upgrade as needed.\u003c/p\u003e\n\u003ch2\u003eChanges \u0026amp; Bug Fixes\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eFixed issue where Jackson's \u003ccode\u003e@JsonProperty\u003c/code\u003e on methods was being ignored in record types \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3893\"\u003e#3893\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed multiple \u003ccode\u003eArrayIndexOutOfBoundsException\u003c/code\u003e issues in \u003ccode\u003eJSONReaderUTF8\u003c/code\u003e, \u003ccode\u003eJSONReaderASCII\u003c/code\u003e, and \u003ccode\u003eJSONReader\u003c/code\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3883\"\u003e#3883\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved performance when parsing JSON with numerous escape characters \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3889\"\u003e#3889\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed conflict where global Date writer overrides \u003ccode\u003e@JSONField\u003c/code\u003e format \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3864\"\u003e#3864\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eTypeUtils.castToTimestamp\u003c/code\u003e compatibility issues when upgrading from 1.2.83 \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3906\"\u003e#3906\u003c/a\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3907\"\u003e#3907\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded support for serializing non-finite numbers (NaN, Infinity) as strings \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3911\"\u003e#3911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded default value support for \u003ccode\u003egetString\u003c/code\u003e and other \u003ccode\u003egetXXX\u003c/code\u003e methods \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3880\"\u003e#3880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed double quotes issue in \u003ccode\u003eTypeUtils.cast\u003c/code\u003e with Long global converter \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3932\"\u003e#3932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Java 8 \u003ccode\u003eTimeModule\u003c/code\u003e support including improved \u003ccode\u003eYearMonth\u003c/code\u003e support \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3934\"\u003e#3934\u003c/a\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3935\"\u003e#3935\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed scientific notation floating point deserialization errors \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3917\"\u003e#3917\u003c/a\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3939\"\u003e#3939\u003c/a\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3955\"\u003e#3955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded serialization support for \u003ccode\u003eorg.w3c.dom.Node\u003c/code\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3960\"\u003e#3960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed exception when parsing object keys with emoji and escape characters \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3928\"\u003e#3928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed generic type inference for \u003ccode\u003eList\u003c/code\u003e subclasses during deserialization \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3926\"\u003e#3926\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded support for custom error messages in JSON Schema validation \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/1559\"\u003e#1559\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eparse(InputStream)\u003c/code\u003e overload with default context \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3946\"\u003e#3946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eDirectByteBuffer\u003c/code\u003e \u003ccode\u003eUnsupportedOperationException\u003c/code\u003e for \u003ccode\u003ejava.nio.ByteBuffer#array\u003c/code\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3894\"\u003e#3894\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded support for composing multiple filters (\u003ccode\u003ePropertyFilter\u003c/code\u003e, \u003ccode\u003ePropertyPreFilter\u003c/code\u003e, etc.) \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3877\"\u003e#3877\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed incorrect overflow check when parsing \u003ccode\u003eBigInteger\u003c/code\u003e as \u003ccode\u003eDouble\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eEnhanced security checks in hex digit processing\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003ereadString\u003c/code\u003e performance in \u003ccode\u003eJSONReaderUTF8\u003c/code\u003e/\u003ccode\u003eJSONReaderUTF16\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed various issues with \u003ccode\u003eWriteNulls\u003c/code\u003e, \u003ccode\u003eErrorOnNullForPrimitives\u003c/code\u003e, \u003ccode\u003eNotWriteDefaultValue\u003c/code\u003e, and other features\u003c/li\u003e\n\u003cli\u003eAdded ProGuard rules for fields affected by reflection operations\u003c/li\u003e\n\u003cli\u003eFixed cast error when using \u003ccode\u003e-Dfastjson2.creator=reflect\u003c/code\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/1563\"\u003e#1563\u003c/a\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch2\u003eMaven Dependency Configuration\u003c/h2\u003e\n\u003ch3\u003eStandard Version\u003c/h3\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;dependency\u0026gt;\r\n    \u0026lt;groupId\u0026gt;com.alibaba.fastjson2\u0026lt;/groupId\u0026gt;\r\n    \u0026lt;artifactId\u0026gt;fastjson2\u0026lt;/artifactId\u0026gt;\r\n    \u0026lt;version\u0026gt;2.0.61\u0026lt;/version\u0026gt;\r\n\u0026lt;/dependency\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eAndroid 5 Optimized Version\u003c/h3\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/7ddfd76e03bd263f4dd3a33dd403bd2387d2c801\"\u003e\u003ccode\u003e7ddfd76\u003c/code\u003e\u003c/a\u003e 2.0.62 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/5a050751f15bacca225d479883764f3a707640bb\"\u003e\u003ccode\u003e5a05075\u003c/code\u003e\u003c/a\u003e fix: JSONPath syntax error when 'in'/'rlike' filter follows other filters (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/14ea6ea41fe828b65489b3fa176bc09f28968db7\"\u003e\u003ccode\u003e14ea6ea\u003c/code\u003e\u003c/a\u003e fix: Map subclass loses \u003ca href=\"https://github.com/type\"\u003e\u003ccode\u003e@​type\u003c/code\u003e\u003c/a\u003e when serialized with ValueFilter (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3984\"\u003e#3984\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/4029\"\u003e#4029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/ede10a52aaac350476984a911b48481fd064cb3a\"\u003e\u003ccode\u003eede10a5\u003c/code\u003e\u003c/a\u003e Docs/comprehensive documentation overhaul (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/4028\"\u003e#4028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/7bceed23f1c6df607dd02c887fa1841d22aa0a89\"\u003e\u003ccode\u003e7bceed2\u003c/code\u003e\u003c/a\u003e fix: skip whitespace after non-comma in readLocalDate for UTF8 reader (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/4005\"\u003e#4005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/05e822003e14a194bd40dc180c5c2c636336252f\"\u003e\u003ccode\u003e05e8220\u003c/code\u003e\u003c/a\u003e fix: DateUtils multiple bugs — bitwise OR typo, bounds check off-by-one, wron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/b3eb46c2d124385e39e6166d1374cdbe220a4205\"\u003e\u003ccode\u003eb3eb46c\u003c/code\u003e\u003c/a\u003e Refactor/improve object reader creator asm (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/4021\"\u003e#4021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/bbb1d0250aed2a0aba4c3dbbebdf9bfb2c2fed9b\"\u003e\u003ccode\u003ebbb1d02\u003c/code\u003e\u003c/a\u003e fix: IOUtils.regionMatches off-by-one and parseInt error message corruption (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/f15dc36ce50828ba4bc2222ea5422a4d24ae22b2\"\u003e\u003ccode\u003ef15dc36\u003c/code\u003e\u003c/a\u003e fix: writeFloat(float[]) ArrayIndexOutOfBoundsException when WriteNonStringVa...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/f95194786605279eeb0e248892a619936a4ed5f8\"\u003e\u003ccode\u003ef951947\u003c/code\u003e\u003c/a\u003e fix: JSONPath nested array filter returning incorrect results, for issue \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/400\"\u003e#400\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/alibaba/fastjson2/compare/2.0.52...2.0.62\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson.core:jackson-core` from 2.21.4 to 2.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/d763562443cc9d6e224a6265ca3710195c813cf5\"\u003e\u003ccode\u003ed763562\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/e5c69fe5f7be957490d52dae70787e7a8138ddda\"\u003e\u003ccode\u003ee5c69fe\u003c/code\u003e\u003c/a\u003e Re-do 2.22.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/0ba6a369eaa19a71b2b63fe40b1e9d317c0eb522\"\u003e\u003ccode\u003e0ba6a36\u003c/code\u003e\u003c/a\u003e Bump version after release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/b106011025f6447695e21ddbb9fd3952d284d10c\"\u003e\u003ccode\u003eb106011\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/18a7fe416a0bf666f6c2ddc6da883bc96382dd2d\"\u003e\u003ccode\u003e18a7fe4\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/503a14ffa4a74ad56a02fd25f0cd997df163c647\"\u003e\u003ccode\u003e503a14f\u003c/code\u003e\u003c/a\u003e Re-do 2.22.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/ab95bc0056119f08ef721849be5e5f2c256b82cd\"\u003e\u003ccode\u003eab95bc0\u003c/code\u003e\u003c/a\u003e ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/0a4b8dedee08e159fddca5eb8e812c1ad881017a\"\u003e\u003ccode\u003e0a4b8de\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/719a42f3676ab3c10e3cd057966807b2206151e7\"\u003e\u003ccode\u003e719a42f\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/92488484b64bc348c43e5a7ff910d93c2f9e9b9c\"\u003e\u003ccode\u003e9248848\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-core/compare/jackson-core-2.21.4...jackson-core-2.22.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson.core:jackson-databind` from 2.21.4 to 2.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/FasterXML/jackson/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.jayway.jsonpath:json-path` from 2.9.0 to 3.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jayway/JsonPath/releases\"\u003ecom.jayway.jsonpath:json-path's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejson-path-3.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadding jackson3 provider (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1066\"\u003e#1066\u003c/a\u003e) by \u003ca href=\"https://github.com/bsa01\"\u003e\u003ccode\u003e@​bsa01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/json-path/JsonPath/pull/1067\"\u003ejson-path/JsonPath#1067\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare Version 3.0.0 - Java 17 baseline with Jackson 3 by \u003ca href=\"https://github.com/kallestenflo\"\u003e\u003ccode\u003e@​kallestenflo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/json-path/JsonPath/pull/1072\"\u003ejson-path/JsonPath#1072\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/bsa01\"\u003e\u003ccode\u003e@​bsa01\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/json-path/JsonPath/pull/1067\"\u003ejson-path/JsonPath#1067\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/json-path/JsonPath/compare/json-path-2.10.0...json-path-3.0.0\"\u003ehttps://github.com/json-path/JsonPath/compare/json-path-2.10.0...json-path-3.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ejson-path-2.10.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBumps dependency versions by \u003ca href=\"https://github.com/kallestenflo\"\u003e\u003ccode\u003e@​kallestenflo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/json-path/JsonPath/pull/1057\"\u003ejson-path/JsonPath#1057\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003enet.minidev:json-smart:2.6.0\u003c/li\u003e\n\u003cli\u003eorg.slf4j:slf4j-api:2.0.17\u003c/li\u003e\n\u003cli\u003ecom.google.code.gson:gson:2.13.2\u003c/li\u003e\n\u003cli\u003eorg.hamcrest:hamcrest:3.0\u003c/li\u003e\n\u003cli\u003ecom.fasterxml.jackson.core:jackson-databind:2.19.2\u003c/li\u003e\n\u003cli\u003eorg.json:json:20250517\u003c/li\u003e\n\u003cli\u003eorg.apache.tapestry:tapestry-json:5.9.0\u003c/li\u003e\n\u003cli\u003ejakarta.json:jakarta.json-api:2.1.3\u003c/li\u003e\n\u003cli\u003ejakarta.json.bind:jakarta.json.bind-api:2.0.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/json-path/JsonPath/compare/json-path-2.9.0...json-path-2.10.0\"\u003ehttps://github.com/json-path/JsonPath/compare/json-path-2.9.0...json-path-2.10.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/json-path/JsonPath/commit/62a4c9f0f65ba3f625aa0867d64c528ba72d09ec\"\u003e\u003ccode\u003e62a4c9f\u003c/code\u003e\u003c/a\u003e Prepare Version 3.0.0 - Java 17 baseline with Jackson 3 (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1072\"\u003e#1072\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/470b56661adc7b677f5e225529f80c1fefb4104d\"\u003e\u003ccode\u003e470b566\u003c/code\u003e\u003c/a\u003e Prepare version 3.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/5a7f29e3f0c1403a94971e93309fe7cfbccf3bd3\"\u003e\u003ccode\u003e5a7f29e\u003c/code\u003e\u003c/a\u003e adding jackson3 provider (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1066\"\u003e#1066\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1067\"\u003e#1067\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/b6c60b3deef74a83eaa92c8dca7d0bc097e957cd\"\u003e\u003ccode\u003eb6c60b3\u003c/code\u003e\u003c/a\u003e Prepare next version (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1059\"\u003e#1059\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/a42738784bbfd77ded36ed07b28dab6b7e00e2af\"\u003e\u003ccode\u003ea427387\u003c/code\u003e\u003c/a\u003e Release 2.10.0 (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1058\"\u003e#1058\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/8e3b92f5ce859c875c399d97ce8e527829194568\"\u003e\u003ccode\u003e8e3b92f\u003c/code\u003e\u003c/a\u003e Bumps dependency versions (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1057\"\u003e#1057\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/45333e0a310af70ad48d34d306da30af1e8e6314\"\u003e\u003ccode\u003e45333e0\u003c/code\u003e\u003c/a\u003e [CI] Remove Java 18 from build matrix (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1005\"\u003e#1005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/3732a85549f3b4c61de4d7eaaab9c3848bcca3aa\"\u003e\u003ccode\u003e3732a85\u003c/code\u003e\u003c/a\u003e Upgrade net.minidev:json-smart from 2.5.0 to 2.5.1 (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1004\"\u003e#1004\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/2d4cc06cd24e3422e29e2de02f154b34d75f5de0\"\u003e\u003ccode\u003e2d4cc06\u003c/code\u003e\u003c/a\u003e Upgrade to gradle 8.5 and add java 21 build (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/995\"\u003e#995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/83ced526cb62672e16905acb6efd952e9bfd60ab\"\u003e\u003ccode\u003e83ced52\u003c/code\u003e\u003c/a\u003e Remove web-test project (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/994\"\u003e#994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jayway/JsonPath/compare/json-path-2.9.0...json-path-3.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.google.protobuf:protobuf-java` from 3.25.5 to 4.35.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/protocolbuffers/protobuf/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.minidev:json-smart` from 2.5.2 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/netplex/json-smart-v2/releases\"\u003enet.minidev:json-smart's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.6.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix JSONObject.merge blocks overwriting (\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/175\"\u003e#175\u003c/a\u003e) by \u003ca href=\"https://github.com/caimo\"\u003e\u003ccode\u003e@​caimo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/238\"\u003enetplex/json-smart-v2#238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild: prepare for next version by \u003ca href=\"https://github.com/hezhangjian\"\u003e\u003ccode\u003e@​hezhangjian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/241\"\u003enetplex/json-smart-v2#241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: use standard charset object instead by \u003ca href=\"https://github.com/hezhangjian\"\u003e\u003ccode\u003e@​hezhangjian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/242\"\u003enetplex/json-smart-v2#242\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd Spotless + Maven wrapper by \u003ca href=\"https://github.com/ccudennec-otto\"\u003e\u003ccode\u003e@​ccudennec-otto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/246\"\u003enetplex/json-smart-v2#246\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix JSONArray merge(Object)(\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/51\"\u003e#51\u003c/a\u003e) by \u003ca href=\"https://github.com/caimo\"\u003e\u003ccode\u003e@​caimo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/247\"\u003enetplex/json-smart-v2#247\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.11.4 to 5.12.0 in /json-smart 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/netplex/json-smart-v2/pull/253\"\u003enetplex/json-smart-v2#253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.11.4 to 5.12.0 in /json-smart-action 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/netplex/json-smart-v2/pull/248\"\u003enetplex/json-smart-v2#248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.2 to 2.44.3 in /json-smart 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/netplex/json-smart-v2/pull/252\"\u003enetplex/json-smart-v2#252\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-compiler-plugin from 3.13.0 to 3.14.0 in /json-smart 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/netplex/json-smart-v2/pull/251\"\u003enetplex/json-smart-v2#251\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.2 to 2.44.3 in /json-smart-action 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/netplex/json-smart-v2/pull/250\"\u003enetplex/json-smart-v2#250\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-compiler-plugin from 3.13.0 to 3.14.0 in /json-smart-action 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/netplex/json-smart-v2/pull/249\"\u003enetplex/json-smart-v2#249\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.0 to 5.12.1 in /json-smart 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/netplex/json-smart-v2/pull/256\"\u003enetplex/json-smart-v2#256\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.0 to 5.12.1 in /json-smart-action 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/netplex/json-smart-v2/pull/255\"\u003enetplex/json-smart-v2#255\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.3 to 2.44.4 in /json-smart-action 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/netplex/json-smart-v2/pull/263\"\u003enetplex/json-smart-v2#263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.3 to 2.44.4 in /json-smart 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/netplex/json-smart-v2/pull/260\"\u003enetplex/json-smart-v2#260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.1 to 5.12.2 in /json-smart-action 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/netplex/json-smart-v2/pull/262\"\u003enetplex/json-smart-v2#262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.1 to 5.12.2 in /json-smart 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/netplex/json-smart-v2/pull/261\"\u003enetplex/json-smart-v2#261\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.4 to 2.44.5 in /json-smart 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/netplex/json-smart-v2/pull/268\"\u003enetplex/json-smart-v2#268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.2 to 5.13.0 in /json-smart 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/netplex/json-smart-v2/pull/267\"\u003enetplex/json-smart-v2#267\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.2 to 5.13.0 in /json-smart-action 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/netplex/json-smart-v2/pull/266\"\u003enetplex/json-smart-v2#266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.4 to 2.44.5 in /json-smart-action 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/netplex/json-smart-v2/pull/265\"\u003enetplex/json-smart-v2#265\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8 in /json-smart-action 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/netplex/json-smart-v2/pull/276\"\u003enetplex/json-smart-v2#276\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.13.0 to 5.13.4 in /json-smart 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/netplex/json-smart-v2/pull/274\"\u003enetplex/json-smart-v2#274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8 in /json-smart 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/netplex/json-smart-v2/pull/273\"\u003enetplex/json-smart-v2#273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.5 to 2.46.1 in /json-smart-action 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/netplex/json-smart-v2/pull/277\"\u003enetplex/json-smart-v2#277\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.13.0 to 5.13.4 in /json-smart-action 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/netplex/json-smart-v2/pull/278\"\u003enetplex/json-smart-v2#278\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.5 to 2.46.1 in /json-smart 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/netplex/json-smart-v2/pull/275\"\u003enetplex/json-smart-v2#275\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix unpack dependencies failed (\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/176\"\u003e#176\u003c/a\u003e) by \u003ca href=\"https://github.com/pcHwang2\"\u003e\u003ccode\u003e@​pcHwang2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/257\"\u003enetplex/json-smart-v2#257\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix Issue 177 (support incomplet json messages) by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/254\"\u003enetplex/json-smart-v2#254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eimprove github action by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/279\"\u003enetplex/json-smart-v2#279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emutiple updates, new github workflow, more coverage.... by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/280\"\u003enetplex/json-smart-v2#280\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/281\"\u003enetplex/json-smart-v2#281\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/pcHwang2\"\u003e\u003ccode\u003e@​pcHwang2\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/257\"\u003enetplex/json-smart-v2#257\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/netplex/json-smart-v2/compare/2.5.2...v2.6.0\"\u003ehttps://github.com/netplex/json-smart-v2/compare/2.5.2...v2.6.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/netplex/json-smart-v2/commit/ebf7cf8cf0dccef246cd1ed0d052074d787a2de4\"\u003e\u003ccode\u003eebf7cf8\u003c/code\u003e\u003c/a\u003e try deploy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/95a9bc3a55e81ad529388652049a2d0604b97a66\"\u003e\u003ccode\u003e95a9bc3\u003c/code\u003e\u003c/a\u003e try somthink else\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/4aac0d725475b920cf18e5af6c32e694bc16085e\"\u003e\u003ccode\u003e4aac0d7\u003c/code\u003e\u003c/a\u003e make it publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/d3a86df285450a116a75cc77919e27e60e8ddc73\"\u003e\u003ccode\u003ed3a86df\u003c/code\u003e\u003c/a\u003e deploy one by one\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/13d282b60c9afbb01822c2522bec5be20f692c97\"\u003e\u003ccode\u003e13d282b\u003c/code\u003e\u003c/a\u003e patch deploy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/b4940f5ade3a2ed9b1b3956e79141dd2972d4555\"\u003e\u003ccode\u003eb4940f5\u003c/code\u003e\u003c/a\u003e patch deploy verbosity\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/edc6e6ebb1a72cfb7da82e4888c9c5d42f0e7bf6\"\u003e\u003ccode\u003eedc6e6e\u003c/code\u003e\u003c/a\u003e hange publishing plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/49e150f4c1d03a83e44800b02d643cc791f27a98\"\u003e\u003ccode\u003e49e150f\u003c/code\u003e\u003c/a\u003e add git tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/29543a18f92a7cf7a69d8083b9093ca4a7cd022f\"\u003e\u003ccode\u003e29543a1\u003c/code\u003e\u003c/a\u003e replace snapshot by the release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/580360225b9b766fb5fd66031c0257870632a583\"\u003e\u003ccode\u003e5803602\u003c/code\u003e\u003c/a\u003e force release to central\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netplex/json-smart-v2/compare/2.5.2...v2.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.minidev:accessors-smart` 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/netplex/json-smart-v2/releases\"\u003enet.minidev:accessors-smart's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.6.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix JSONObject.merge blocks overwriting (\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/175\"\u003e#175\u003c/a\u003e) by \u003ca href=\"https://github.com/caimo\"\u003e\u003ccode\u003e@​caimo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/238\"\u003enetplex/json-smart-v2#238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild: prepare for next version by \u003ca href=\"https://github.com/hezhangjian\"\u003e\u003ccode\u003e@​hezhangjian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/241\"\u003enetplex/json-smart-v2#241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: use standard charset object instead by \u003ca href=\"https://github.com/hezhangjian\"\u003e\u003ccode\u003e@​hezhangjian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/242\"\u003enetplex/json-smart-v2#242\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd Spotless + Maven wrapper by \u003ca href=\"https://github.com/ccudennec-otto\"\u003e\u003ccode\u003e@​ccudennec-otto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/246\"\u003enetplex/json-smart-v2#246\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix JSONArray merge(Object)(\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/51\"\u003e#51\u003c/a\u003e) by \u003ca href=\"https://github.com/caimo\"\u003e\u003ccode\u003e@​caimo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/247\"\u003enetplex/json-smart-v2#247\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.11.4 to 5.12.0 in /json-smart 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/netplex/json-smart-v2/pull/253\"\u003enetplex/json-smart-v2#253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.11.4 to 5.12.0 in /json-smart-action 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/netplex/json-smart-v2/pull/248\"\u003enetplex/json-smart-v2#248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.2 to 2.44.3 in /json-smart 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/netplex/json-smart-v2/pull/252\"\u003enetplex/json-smart-v2#252\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-compiler-plugin from 3.13.0 to 3.14.0 in /json-smart 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/netplex/json-smart-v2/pull/251\"\u003enetplex/json-smart-v2#251\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.2 to 2.44.3 in /json-smart-action 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/netplex/json-smart-v2/pull/250\"\u003enetplex/json-smart-v2#250\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-compiler-plugin from 3.13.0 to 3.14.0 in /json-smart-action 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/netplex/json-smart-v2/pull/249\"\u003enetplex/json-smart-v2#249\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.0 to 5.12.1 in /json-smart 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/netplex/json-smart-v2/pull/256\"\u003enetplex/json-smart-v2#256\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.0 to 5.12.1 in /json-smart-action 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/netplex/json-smart-v2/pull/255\"\u003enetplex/json-smart-v2#255\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.3 to 2.44.4 in /json-smart-action 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/netplex/json-smart-v2/pull/263\"\u003enetplex/json-smart-v2#263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.3 to 2.44.4 in /json-smart 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/netplex/json-smart-v2/pull/260\"\u003enetplex/json-smart-v2#260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.1 to 5.12.2 in /json-smart-action 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/netplex/json-smart-v2/pull/262\"\u003enetplex/json-smart-v2#262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.1 to 5.12.2 in /json-smart 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/netplex/json-smart-v2/pull/261\"\u003enetplex/json-smart-v2#261\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.4 to 2.44.5 in /json-smart 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/netplex/json-smart-v2/pull/268\"\u003enetplex/json-smart-v2#268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.2 to 5.13.0 in /json-smart 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/netplex/json-smart-v2/pull/267\"\u003enetplex/json-smart-v2#267\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.2 to 5.13.0 in /json-smart-action 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/netplex/json-smart-v2/pull/266\"\u003enetplex/json-smart-v2#266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.4 to 2.44.5 in /json-smart-action 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/netplex/json-smart-v2/pull/265\"\u003enetplex/json-smart-v2#265\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8 in /json-smart-action 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/netplex/json-smart-v2/pull/276\"\u003enetplex/json-smart-v2#276\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.13.0 to 5.13.4 in /json-smart 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/netplex/json-smart-v2/pull/274\"\u003enetplex/json-smart-v2#274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8 in /json-smart 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/netplex/json-smart-v2/pull/273\"\u003enetplex/json-smart-v2#273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.5 to 2.46.1 in /json-smart-action 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/netplex/json-smart-v2/pull/277\"\u003enetplex/json-smart-v2#277\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.13.0 to 5.13.4 in /json-smart-action 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/netplex/json-smart-v2/pull/278\"\u003enetplex/json-smart-v2#278\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.5 to 2.46.1 in /json-smart 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/netplex/json-smart-v2/pull/275\"\u003enetplex/json-smart-v2#275\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix unpack dependencies failed (\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/176\"\u003e#176\u003c/a\u003e) by \u003ca href=\"https://github.com/pcHwang2\"\u003e\u003ccode\u003e@​pcHwang2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/257\"\u003enetplex/json-smart-v2#257\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix Issue 177 (support incomplet json messages) by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/254\"\u003enetplex/json-smart-v2#254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eimprove github action by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/279\"\u003enetplex/json-smart-v2#279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emutiple updates, new github workflow, more coverage.... by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/280\"\u003enetplex/json-smart-v2#280\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/281\"\u003enetplex/json-smart-v2#281\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/pcHwang2\"\u003e\u003ccode\u003e@​pcHwang2\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/257\"\u003enetplex/json-smart-v2#257\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/netplex/json-smart-v2/compare/2.5.2...v2.6.0\"\u003ehttps://github.com/netplex/json-smart-v2/compare/2.5.2...v2.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e2.5.2\u003c/h2\u003e\n\u003ch2\u003eAbout CVE-2024-57699\u003c/h2\u003e\n\u003cp\u003eThanks for \u003ca href=\"https://github.com/ccudennec-otto\"\u003e\u003ccode\u003e@​ccudennec-otto\u003c/code\u003e\u003c/a\u003e Some remarks on the CVE, more discussions in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/236\"\u003e#236\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eas mentioned \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/232\"\u003ehere\u003c/a\u003e it is quite unlikely that the vulnerability is exploited if you come here because of Spring Security / \u003ccode\u003ecom.nimbusds:oauth2-oidc-sdk\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ethe code changes for the upcoming release will \u0026quot;only\u0026quot; fix the default modes provided by \u003ca href=\"https://github.com/netplex/json-smart-v2/blob/master/json-smart/src/main/java/net/minidev/json/parser/JSONParser.java#L118\"\u003eJSONParser\u003c/a\u003e, e.g. \u003ccode\u003eMODE_RFC4627\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eif you create the \u003ccode\u003eJSONParser\u003c/code\u003e manually / with custom options, make sure you set option \u003ccode\u003eLIMIT_JSON_DEPTH\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003esince that's what \u0026quot;connect2id\u0026quot; is doing in their library, they were responsible for fixing it. They've already provided a new 11.x release that fixes the \u003ccode\u003eJSONParser\u003c/code\u003e setup on their side, i.e. you rather need \u003cem\u003etheir\u003c/em\u003e fixed version and not version 2.5.2 of json-smart\u003c/li\u003e\n\u003cli\u003eas stated \u003ca href=\"https://bitbucket.org/connect2id/oauth-2.0-sdk-with-openid-connect-extensions/issues/494/\"\u003ehere\u003c/a\u003e, they would also need to backport the fix to the versions that \u003ca href=\"https://github.com/spring-projects/spring-security/blob/27cb1154f25c74a6532dbd222ead9da53e880020/gradle/libs.versions.toml#L25\"\u003eSpring Security needs\u003c/a\u003e IMHO\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix CVE-2024-57699 for predefined parsers by \u003ca href=\"https://github.com/ccudennec-otto\"\u003e\u003ccode\u003e@​ccudennec-otto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/233\"\u003enetplex/json-smart-v2#233\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/netplex/json-smart-v2/commit/ebf7cf8cf0dccef246cd1ed0d052074d787a2de4\"\u003e\u003ccode\u003eebf7cf8\u003c/code\u003e\u003c/a\u003e try deploy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/95a9bc3a55e81ad529388652049a2d0604b97a66\"\u003e\u003ccode\u003e95a9bc3\u003c/code\u003e\u003c/a\u003e try somthink else\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/4aac0d725475b920cf18e5af6c32e694bc16085e\"\u003e\u003ccode\u003e4aac0d7\u003c/code\u003e\u003c/a\u003e make it publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/d3a86df285450a116a75cc77919e27e60e8ddc73\"\u003e\u003ccode\u003ed3a86df\u003c/code\u003e\u003c/a\u003e deploy one by one\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/13d282b60c9afbb01822c2522bec5be20f692c97\"\u003e\u003ccode\u003e13d282b\u003c/code\u003e\u003c/a\u003e patch deploy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/b4940f5ade3a2ed9b1b3956e79141dd2972d4555\"\u003e\u003ccode\u003eb4940f5\u003c/code\u003e\u003c/a\u003e patch deploy verbosity\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/edc6e6ebb1a72cfb7da82e4888c9c5d42f0e7bf6\"\u003e\u003ccode\u003eedc6e6e\u003c/code\u003e\u003c/a\u003e hange publishing plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/49e150f4c1d03a83e44800b02d643cc791f27a98\"\u003e\u003ccode\u003e49e150f\u003c/code\u003e\u003c/a\u003e add git tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/29543a18f92a7cf7a69d8083b9093ca4a7cd022f\"\u003e\u003ccode\u003e29543a1\u003c/code\u003e\u003c/a\u003e replace snapshot by the release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/580360225b9b766fb5fd66031c0257870632a583\"\u003e\u003ccode\u003e5803602\u003c/code\u003e\u003c/a\u003e force release to central\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netplex/json-smart-v2/compare/2.5.0...v2.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `commons-net:commons-net` from 3.10.0 to 3.13.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/commons-net/blob/master/RELEASE-NOTES.txt\"\u003ecommons-net:commons-net's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eApache Commons Net 3.13.0 Release Notes\u003c/h2\u003e\n\u003cp\u003eThe Apache Commons Net team is pleased to announce the release of Apache Commons Net 3.13.0.\u003c/p\u003e\n\u003cp\u003eApache Commons Net library contains a collection of network utilities and protocol implementations.\nSupported protocols include Echo, Finger, FTP, NNTP, NTP, POP3(S), SMTP(S), Telnet, and Whois.\u003c/p\u003e\n\u003cp\u003eThis is a feature and maintenance release. Java 8 or later is required.\u003c/p\u003e\n\u003cp\u003eFor complete information on Apache Commons Net, including instructions on how to submit bug reports,\npatches, or suggestions for improvement, see the Apache Commons Net website:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://commons.apache.org/proper/commons-net/\"\u003ehttps://commons.apache.org/proper/commons-net/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDownload page: \u003ca href=\"https://commons.apache.org/proper/commons-net/download_net.cgi\"\u003ehttps://commons.apache.org/proper/commons-net/download_net.cgi\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew features\u003c/h2\u003e\n\u003cp\u003eo           Add DatagramSocketClient.getDefaultTimeoutDuration() and deprecate getDefaultTimeout(). Thanks to Gary Gregory.\no NET-741:  Add subnet IPv6 handling with SubnetUtils6 \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/391\"\u003e#391\u003c/a\u003e. Thanks to Maros Orsak, Gary Gregory.\u003c/p\u003e\n\u003ch2\u003eFixed Bugs\u003c/h2\u003e\n\u003cp\u003eo           DaytimeTCPClientTest now should now pass inside most VPNs. Thanks to Henri Biestro, Gary Gregory.\no           Migrate tests to JUnit5 \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/358\"\u003e#358\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/359\"\u003e#359\u003c/a\u003e. Thanks to Jakub Kupczyk, Gary Gregory.\no           Fix malformed Javadoc comments. Thanks to Gary Gregory.\no           IMAPExportMbox now restores the current thread's interrupt flag when catching InterruptedException. Thanks to Gary Gregory.\no           IOUtil.readWrite() now restores the current thread's interrupt flag when catching InterruptedException. Thanks to Gary Gregory.\no           TelnetInputStream now restores the current thread's interrupt flag when catching InterruptedException. Thanks to Gary Gregory.\no NET-740:  FTP fails to parse listings for Linux vsftpd in Chinese or Japanese \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/393\"\u003e#393\u003c/a\u003e. Thanks to Jianwei Guo, Gary Gregory.\no           TelnetInputStream.read() doesn't preserve the original InterruptedException as the cause of its InterruptedIOException. Thanks to Gary Gregory.\no           FTPClient._storeFile(String, String, InputStream) doesn't always close it's internal socket when an exception is thrown early in processing. Thanks to Gary Gregory.\no           ListenerList.removeListener(T) now ignores null input to avoid a NullPointerException. Thanks to Gary Gregory.\no           ListenerList.addListener(T) now ignores null input. Thanks to Gary Gregory.\no           Fix typo in FTPConnectionClosedException message from FTP.getReply(boolean). Thanks to Gary Gregory.\no           Reimplement Util.copyReader() with IOUtils.copyLarge(). Thanks to Gary Gregory.\no           Reimplement Util.copyStream() with IOUtils.copyLarge(). Thanks to Gary Gregory.\no           Reimplement Util.copyStream() with IOUtils.copyLarge(). Thanks to Gary Gregory.\no           Deprecate Util.copyReader(Reader, Writer) in favor of IOUtils.copyLarge(Reader, Writer). Thanks to Gary Gregory.\u003c/p\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cp\u003eo           Bump org.apache.commons:commons-parent from 85 to 97 \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/371\"\u003e#371\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/388\"\u003e#388\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/389\"\u003e#389\u003c/a\u003e. Thanks to Gary Gregory, Dependabot.\no           Bump org.apache.commons:commons-lang3 from 3.18.0 to 3.19.0. Thanks to Gary Gregory, Dependabot.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/35fa0dff3e8660359832e72631ff3cf557b543a8\"\u003e\u003ccode\u003e35fa0df\u003c/code\u003e\u003c/a\u003e Prepare for the release candidate 3.13.0 RC1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/1cc5b6e77d86bb54131742fee175e7c700bbf2ca\"\u003e\u003ccode\u003e1cc5b6e\u003c/code\u003e\u003c/a\u003e Prepare for the next release candidate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/a4b246e085c1d3ce5936806d8f85d2e826daca8a\"\u003e\u003ccode\u003ea4b246e\u003c/code\u003e\u003c/a\u003e Reuse IOUtils.copyLarge()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/e5ca262cea38b2f889eb003818cf9f97a6395ad6\"\u003e\u003ccode\u003ee5ca262\u003c/code\u003e\u003c/a\u003e Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/3cb18ec82ef0b3640536137639763a682994a61e\"\u003e\u003ccode\u003e3cb18ec\u003c/code\u003e\u003c/a\u003e Deprecate Util.copyReader(Reader, Writer) in favor of\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/3373d77db2376665a034e753e3646251b3d23aa4\"\u003e\u003ccode\u003e3373d77\u003c/code\u003e\u003c/a\u003e Reimplement Util.copyReader() with IOUtils.copyLarge()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/3be2077ccf1da69614a7883ed352037e30f3366f\"\u003e\u003ccode\u003e3be2077\u003c/code\u003e\u003c/a\u003e Reimplement Util.copyStream() with IOUtils.copyLarge()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/7b41144008427acceea596ac74f36e716ea2586e\"\u003e\u003ccode\u003e7b41144\u003c/code\u003e\u003c/a\u003e Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/1b584b493ffa6a1b42cbda3c7f683e073f1a3bdf\"\u003e\u003ccode\u003e1b584b4\u003c/code\u003e\u003c/a\u003e Fix typo in FTPConnectionClosedException message from\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/3792023843b95dabe60fb745287cae94c8a44be5\"\u003e\u003ccode\u003e3792023\u003c/code\u003e\u003c/a\u003e Javadoc\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/commons-net/compare/rel/commons-net-3.10.0...rel/commons-net-3.13.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okio:okio` from 3.4.0 to 3.17.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okio/blob/master/CHANGELOG.md\"\u003ecom.squareup.okio:okio's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.17.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-03-11\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eNew: Adjust down the Kotlin stdlib dependency to [Kotlin 2.1.21][kotlin_2_1_21]. Okio is built\nwith an up-to-date Kotlin compiler (2.2.21), but depends on an older kotlin-stdlib. We're doing\nthis so you can update Okio and Kotlin independently.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Return the correct timestamp in \u003ccode\u003eFileMetadata.createdAtMillis\u003c/code\u003e on Kotlin/Native on UNIX\nplatforms. We were incorrectly using the POSIX \u003ccode\u003ectime\u003c/code\u003e (\u003cem\u003echange\u003c/em\u003e time) instead of the\n\u003ccode\u003ebirthtime\u003c/code\u003e. With this fix Okio now prefers \u003ccode\u003estatx()\u003c/code\u003e over \u003ccode\u003estat()\u003c/code\u003e on native platforms. This\nAPI first appeared in Linux in 4.11 (2017) and Android in API 30 (2020).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.16.4\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-11-17\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Don't delay triggering timeouts. In 3.16.0 we introduced a regression that caused timeouts\nto fi...\n\n_Description has been truncated_","html_url":"https://github.com/SophiaData/Bigdata_Code_Tutorial/pull/237","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/SophiaData%2FBigdata_Code_Tutorial/issues/237","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/237/packages"},{"uuid":"4791601017","node_id":"PR_kwDOTLI6a87s-pau","number":10,"state":"closed","title":"build(deps): bump the android-deps group in /apps/android with 26 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-06T01:56:23.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-02T05:39:58.000Z","updated_at":"2026-07-06T01:56:25.000Z","time_to_close":332185,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":26,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"}],"path":"/apps/android","ecosystem":"maven"},"body":"Bumps the android-deps group in /apps/android with 26 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.1` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.6.1` |\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSuppor...\n\n_Description has been truncated_","html_url":"https://github.com/EIcekid/openclaw/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/EIcekid%2Fopenclaw/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"},{"uuid":"4790093958","node_id":"PR_kwDOSOd66s7s57k7","number":44,"state":"closed","title":"Bump the android-deps group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T23:54:47.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-02T00:02:06.000Z","updated_at":"2026-07-03T23:54:48.000Z","time_to_close":172361,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"android-deps","update_count":21,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 14 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\u003c/li\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/Roman-Roz/Assistent/pull/44","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Roman-Roz%2FAssistent/issues/44","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/44/packages"},{"uuid":"4790053401","node_id":"PR_kwDOSOOxo87s5zb8","number":48,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T23:44:22.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-01T23:52:52.000Z","updated_at":"2026-07-03T23:44:24.000Z","time_to_close":172290,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":21,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 14 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\u003c/li\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/Agent-Pattern-Labs/sparse-kernel/pull/48","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Agent-Pattern-Labs%2Fsparse-kernel/issues/48","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/48/packages"},{"uuid":"4790053225","node_id":"PR_kwDOSKKHCc7s5zZn","number":55,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T23:44:22.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-01T23:52:49.000Z","updated_at":"2026-07-03T23:44:23.000Z","time_to_close":172293,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":21,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 14 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\u003c/li\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/karaabd23-crypto/openclaw/pull/55","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/karaabd23-crypto%2Fopenclaw/issues/55","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/55/packages"},{"uuid":"4789887593","node_id":"PR_kwDORZbEys7s5SE1","number":23,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T23:05:15.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-01T23:15:20.000Z","updated_at":"2026-07-03T23:05:17.000Z","time_to_close":172195,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":21,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 21 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.6.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.6.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved Configuration Cache hit rates\u003c/li\u003e\n\u003cli\u003eAdditional CLI rendering options\u003c/li\u003e\n\u003cli\u003eImportant project hierarchy lookup deprecations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.6.1/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/Ahar28\"\u003eAharnish Solanki\u003c/a\u003e,\n\u003ca href=\"https://github.com/benediktjohannes\"\u003eBenedikt Johannes\u003c/a\u003e,\n\u003ca href=\"https://github.com/devareddy05\"\u003eDevendra Reddy Pennabadi\u003c/a\u003e,\n\u003ca href=\"https://github.com/smplio\"\u003eDmytro Rodionov\u003c/a\u003e,\n\u003ca href=\"https://github.com/Dreeam-qwq\"\u003eDreeam\u003c/a\u003e,\n\u003ca href=\"https://github.com/EliasHdzR\"\u003eElías Hernández Rodríguez\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/FinlayRJW\"\u003eFinlayRJW\u003c/a\u003e,\n\u003ca href=\"https://github.com/kamalkansal27\"\u003eKamal Kansal\u003c/a\u003e,\n\u003ca href=\"https://github.com/Marcono1234\"\u003eMarcono1234\u003c/a\u003e,\n\u003ca href=\"https://github.com/runningcode\"\u003eNelson Osacky\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/rkdfx\"\u003eRavi\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/rschmitt\"\u003eRyan Schmitt\u003c/a\u003e,\n\u003ca href=\"https://github.com/sschuberth\"\u003eSebastian Schuberth\u003c/a\u003e,\n\u003ca href=\"https://github.com/seung-hun-h\"\u003eseunghun.ham\u003c/a\u003e,\n\u003ca href=\"https://github.com/sk-reddy17\"\u003esk-reddy17\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/VedantMadane\"\u003eVedant Madane\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.6.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew :wrapper --gradle-version=9.6.1 \u0026amp;\u0026amp; ./gradlew :wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.6.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/309d128bd9fe8c0b71311878fc660b9cbaa07c51\"\u003e\u003ccode\u003e309d128\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38328\"\u003e#38328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/040a978e74ceefbd408bd832fca23e1462fb34b7\"\u003e\u003ccode\u003e040a978\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e0b8325523e3ae1e93fe81da595a1fb1b66a6cce\"\u003e\u003ccode\u003ee0b8325\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38\"\u003e#38\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/946f3e637ce0d8042a22a8096b9837a69607382e\"\u003e\u003ccode\u003e946f3e6\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38300\"\u003e#38300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/65f82246193da1bd8c7a087712c3c376aab1dd82\"\u003e\u003ccode\u003e65f8224\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e346a5ec9d5bbdb5a2478118651d22c19b121f39\"\u003e\u003ccode\u003ee346a5e\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38301\"\u003e#38301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9b53be9a1271e12ac5186f7148c5a15b85f1f1d6\"\u003e\u003ccode\u003e9b53be9\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0dd3b53bec1c03db4bb20b7cb401c948123c5db4\"\u003e\u003ccode\u003e0dd3b53\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/48e5ac210190a0e3a33083404eea77e4dbdf8918\"\u003e\u003ccode\u003e48e5ac2\u003c/code\u003e\u003c/a\u003e Add reproducers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/25598fd75cffa8034af51d399e2b4bf03ba4c7ab\"\u003e\u003ccode\u003e25598fd\u003c/code\u003e\u003c/a\u003e Prepare 9.6.1 patch release (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38293\"\u003e#38293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-task-list-items's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-...\n\n_Description has been truncated_","html_url":"https://github.com/kakahu2015/openclaw/pull/23","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kakahu2015%2Fopenclaw/issues/23","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/23/packages"},{"uuid":"4789735904","node_id":"PR_kwDOR68kG87s4zfP","number":33,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 26 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T22:34:39.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-01T22:43:38.000Z","updated_at":"2026-07-03T22:34:40.000Z","time_to_close":172261,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":26,"packages":[{"name":"com.android.application","old_version":"9.0.1","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.0.1","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.2.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 19 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.0.1` | `9.2.1` |\n| com.android.test | `9.0.1` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.1` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.2.1` | `9.6.1` |\n\n\nUpdates `com.android.application` from 9.0.1 to 9.2.1\n\nUpdates `com.android.test` from 9.0.1 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew config...\n\n_Description has been truncated_","html_url":"https://github.com/yanghongqin/AI-Virtual-Company/pull/33","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yanghongqin%2FAI-Virtual-Company/issues/33","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/33/packages"},{"uuid":"4788829396","node_id":"PR_kwDOST9Fm87s14Ba","number":48,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T19:54:41.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-01T20:04:03.000Z","updated_at":"2026-07-03T19:54:43.000Z","time_to_close":172238,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":21,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 21 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.6.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.6.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved Configuration Cache hit rates\u003c/li\u003e\n\u003cli\u003eAdditional CLI rendering options\u003c/li\u003e\n\u003cli\u003eImportant project hierarchy lookup deprecations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.6.1/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/Ahar28\"\u003eAharnish Solanki\u003c/a\u003e,\n\u003ca href=\"https://github.com/benediktjohannes\"\u003eBenedikt Johannes\u003c/a\u003e,\n\u003ca href=\"https://github.com/devareddy05\"\u003eDevendra Reddy Pennabadi\u003c/a\u003e,\n\u003ca href=\"https://github.com/smplio\"\u003eDmytro Rodionov\u003c/a\u003e,\n\u003ca href=\"https://github.com/Dreeam-qwq\"\u003eDreeam\u003c/a\u003e,\n\u003ca href=\"https://github.com/EliasHdzR\"\u003eElías Hernández Rodríguez\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/FinlayRJW\"\u003eFinlayRJW\u003c/a\u003e,\n\u003ca href=\"https://github.com/kamalkansal27\"\u003eKamal Kansal\u003c/a\u003e,\n\u003ca href=\"https://github.com/Marcono1234\"\u003eMarcono1234\u003c/a\u003e,\n\u003ca href=\"https://github.com/runningcode\"\u003eNelson Osacky\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/rkdfx\"\u003eRavi\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/rschmitt\"\u003eRyan Schmitt\u003c/a\u003e,\n\u003ca href=\"https://github.com/sschuberth\"\u003eSebastian Schuberth\u003c/a\u003e,\n\u003ca href=\"https://github.com/seung-hun-h\"\u003eseunghun.ham\u003c/a\u003e,\n\u003ca href=\"https://github.com/sk-reddy17\"\u003esk-reddy17\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/VedantMadane\"\u003eVedant Madane\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.6.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew :wrapper --gradle-version=9.6.1 \u0026amp;\u0026amp; ./gradlew :wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.6.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/309d128bd9fe8c0b71311878fc660b9cbaa07c51\"\u003e\u003ccode\u003e309d128\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38328\"\u003e#38328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/040a978e74ceefbd408bd832fca23e1462fb34b7\"\u003e\u003ccode\u003e040a978\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e0b8325523e3ae1e93fe81da595a1fb1b66a6cce\"\u003e\u003ccode\u003ee0b8325\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38\"\u003e#38\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/946f3e637ce0d8042a22a8096b9837a69607382e\"\u003e\u003ccode\u003e946f3e6\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38300\"\u003e#38300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/65f82246193da1bd8c7a087712c3c376aab1dd82\"\u003e\u003ccode\u003e65f8224\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e346a5ec9d5bbdb5a2478118651d22c19b121f39\"\u003e\u003ccode\u003ee346a5e\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38301\"\u003e#38301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9b53be9a1271e12ac5186f7148c5a15b85f1f1d6\"\u003e\u003ccode\u003e9b53be9\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0dd3b53bec1c03db4bb20b7cb401c948123c5db4\"\u003e\u003ccode\u003e0dd3b53\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/48e5ac210190a0e3a33083404eea77e4dbdf8918\"\u003e\u003ccode\u003e48e5ac2\u003c/code\u003e\u003c/a\u003e Add reproducers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/25598fd75cffa8034af51d399e2b4bf03ba4c7ab\"\u003e\u003ccode\u003e25598fd\u003c/code\u003e\u003c/a\u003e Prepare 9.6.1 patch release (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38293\"\u003e#38293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-task-list-items's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-...\n\n_Description has been truncated_","html_url":"https://github.com/VasilyAssistant/openclaw/pull/48","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/VasilyAssistant%2Fopenclaw/issues/48","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/48/packages"},{"uuid":"4722361509","node_id":"PR_kwDOTCWVXc7pdvXL","number":2,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 22 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-01T21:29:37.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-23T03:29:39.000Z","updated_at":"2026-07-01T21:29:46.000Z","time_to_close":755998,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":22,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.compose:compose-bom","old_version":"2026.04.01","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 22 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n| androidx.compose:compose-bom | `2026.04.01` | `2026.06.00` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.6.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.6.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved Configuration Cache hit rates\u003c/li\u003e\n\u003cli\u003eAdditional CLI rendering options\u003c/li\u003e\n\u003cli\u003eImportant project hierarchy lookup deprecations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.6.1/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/Ahar28\"\u003eAharnish Solanki\u003c/a\u003e,\n\u003ca href=\"https://github.com/benediktjohannes\"\u003eBenedikt Johannes\u003c/a\u003e,\n\u003ca href=\"https://github.com/devareddy05\"\u003eDevendra Reddy Pennabadi\u003c/a\u003e,\n\u003ca href=\"https://github.com/smplio\"\u003eDmytro Rodionov\u003c/a\u003e,\n\u003ca href=\"https://github.com/Dreeam-qwq\"\u003eDreeam\u003c/a\u003e,\n\u003ca href=\"https://github.com/EliasHdzR\"\u003eElías Hernández Rodríguez\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/FinlayRJW\"\u003eFinlayRJW\u003c/a\u003e,\n\u003ca href=\"https://github.com/kamalkansal27\"\u003eKamal Kansal\u003c/a\u003e,\n\u003ca href=\"https://github.com/Marcono1234\"\u003eMarcono1234\u003c/a\u003e,\n\u003ca href=\"https://github.com/runningcode\"\u003eNelson Osacky\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/rkdfx\"\u003eRavi\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/rschmitt\"\u003eRyan Schmitt\u003c/a\u003e,\n\u003ca href=\"https://github.com/sschuberth\"\u003eSebastian Schuberth\u003c/a\u003e,\n\u003ca href=\"https://github.com/seung-hun-h\"\u003eseunghun.ham\u003c/a\u003e,\n\u003ca href=\"https://github.com/sk-reddy17\"\u003esk-reddy17\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/VedantMadane\"\u003eVedant Madane\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.6.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew :wrapper --gradle-version=9.6.1 \u0026amp;\u0026amp; ./gradlew :wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.6.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/309d128bd9fe8c0b71311878fc660b9cbaa07c51\"\u003e\u003ccode\u003e309d128\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38328\"\u003e#38328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/040a978e74ceefbd408bd832fca23e1462fb34b7\"\u003e\u003ccode\u003e040a978\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e0b8325523e3ae1e93fe81da595a1fb1b66a6cce\"\u003e\u003ccode\u003ee0b8325\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38\"\u003e#38\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/946f3e637ce0d8042a22a8096b9837a69607382e\"\u003e\u003ccode\u003e946f3e6\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38300\"\u003e#38300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/65f82246193da1bd8c7a087712c3c376aab1dd82\"\u003e\u003ccode\u003e65f8224\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e346a5ec9d5bbdb5a2478118651d22c19b121f39\"\u003e\u003ccode\u003ee346a5e\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38301\"\u003e#38301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9b53be9a1271e12ac5186f7148c5a15b85f1f1d6\"\u003e\u003ccode\u003e9b53be9\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0dd3b53bec1c03db4bb20b7cb401c948123c5db4\"\u003e\u003ccode\u003e0dd3b53\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/48e5ac210190a0e3a33083404eea77e4dbdf8918\"\u003e\u003ccode\u003e48e5ac2\u003c/code\u003e\u003c/a\u003e Add reproducers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/25598fd75cffa8034af51d399e2b4bf03ba4c7ab\"\u003e\u003ccode\u003e25598fd\u003c/code\u003e\u003c/a\u003e Prepare 9.6.1 patch release (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38293\"\u003e#38293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.04.01 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-task-list-items's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for al...\n\n_Description has been truncated_","html_url":"https://github.com/stevewow/openclaw/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevewow%2Fopenclaw/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"},{"uuid":"4722274247","node_id":"PR_kwDOSxJzv87pddJk","number":16,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 22 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-02T03:06:25.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-23T03:11:20.000Z","updated_at":"2026-07-02T03:06:27.000Z","time_to_close":777305,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":22,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.0","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.compose:compose-bom","old_version":"2026.04.01","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 22 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.0` |\n| androidx.compose:compose-bom | `2026.04.01` | `2026.06.00` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.6.0\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.6.0.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved Configuration Cache hit rates\u003c/li\u003e\n\u003cli\u003eAdditional CLI rendering options\u003c/li\u003e\n\u003cli\u003eImportant project hierarchy lookup deprecations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.6.0/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/Ahar28\"\u003eAharnish Solanki\u003c/a\u003e,\n\u003ca href=\"https://github.com/benediktjohannes\"\u003eBenedikt Johannes\u003c/a\u003e,\n\u003ca href=\"https://github.com/devareddy05\"\u003eDevendra Reddy Pennabadi\u003c/a\u003e,\n\u003ca href=\"https://github.com/smplio\"\u003eDmytro Rodionov\u003c/a\u003e,\n\u003ca href=\"https://github.com/Dreeam-qwq\"\u003eDreeam\u003c/a\u003e,\n\u003ca href=\"https://github.com/EliasHdzR\"\u003eElías Hernández Rodríguez\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/FinlayRJW\"\u003eFinlayRJW\u003c/a\u003e,\n\u003ca href=\"https://github.com/kamalkansal27\"\u003eKamal Kansal\u003c/a\u003e,\n\u003ca href=\"https://github.com/Marcono1234\"\u003eMarcono1234\u003c/a\u003e,\n\u003ca href=\"https://github.com/runningcode\"\u003eNelson Osacky\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/rkdfx\"\u003eRavi\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/rschmitt\"\u003eRyan Schmitt\u003c/a\u003e,\n\u003ca href=\"https://github.com/sschuberth\"\u003eSebastian Schuberth\u003c/a\u003e,\n\u003ca href=\"https://github.com/seung-hun-h\"\u003eseunghun.ham\u003c/a\u003e,\n\u003ca href=\"https://github.com/sk-reddy17\"\u003esk-reddy17\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/VedantMadane\"\u003eVedant Madane\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.6.0 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew :wrapper --gradle-version=9.6.0 \u0026amp;\u0026amp; ./gradlew :wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.6.0/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.6.0/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.6.0 RC3\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/3f750f03d77e42327c5f9fcb9992110088330a32\"\u003e\u003ccode\u003e3f750f0\u003c/code\u003e\u003c/a\u003e Update distro size for Gradle 9.6.0 release (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38243\"\u003e#38243\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/ae93cfa823470de24b8fd96ea04334f6affa1d96\"\u003e\u003ccode\u003eae93cfa\u003c/code\u003e\u003c/a\u003e update distro size\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7e22b56a4f32c1b6d2e532a00ebe0e5a3394f4b\"\u003e\u003ccode\u003ef7e22b5\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-3 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38227\"\u003e#38227\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/71a8eb9b7d7f41a90f82fd026fbc206c095c0e7f\"\u003e\u003ccode\u003e71a8eb9\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/70a87451716eb6d7d568ea00ad1824a4de70ab05\"\u003e\u003ccode\u003e70a8745\u003c/code\u003e\u003c/a\u003e Prepare release notes for Gradle 9.6.0RC3 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38220\"\u003e#38220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/970652223811ce4912808dedef77844f1a47bd95\"\u003e\u003ccode\u003e9706522\u003c/code\u003e\u003c/a\u003e some final polishing for release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/af308ebf8d9d3d8ba75314f6a114150734409584\"\u003e\u003ccode\u003eaf308eb\u003c/code\u003e\u003c/a\u003e Restore GradleInternal.getRootProject overload for binary compatibility (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38214\"\u003e#38214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/239361b0fb2351051782497389ff202816d8c65a\"\u003e\u003ccode\u003e239361b\u003c/code\u003e\u003c/a\u003e Restore GradleInternal.getRootProject overload for binary compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/896dc44a40e2008428f9fbb29faa92d6b7b8cac0\"\u003e\u003ccode\u003e896dc44\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-2 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38187\"\u003e#38187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/2d4ec2521c8cbcaf50258cdab827756924f82b23\"\u003e\u003ccode\u003e2d4ec25\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.04.01 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-task-list-items's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/duchi0236/longclaw/pull/16","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/duchi0236%2Flongclaw/issues/16","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/16/packages"},{"uuid":"4722099767","node_id":"PR_kwDOSeqYCM7pc5HT","number":30,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 22 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-02T02:24:53.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-23T02:29:16.000Z","updated_at":"2026-07-02T02:24:55.000Z","time_to_close":777337,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":22,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.0","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.compose:compose-bom","old_version":"2026.04.01","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 22 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.0` |\n| androidx.compose:compose-bom | `2026.04.01` | `2026.06.00` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.6.0\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.6.0.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved Configuration Cache hit rates\u003c/li\u003e\n\u003cli\u003eAdditional CLI rendering options\u003c/li\u003e\n\u003cli\u003eImportant project hierarchy lookup deprecations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.6.0/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/Ahar28\"\u003eAharnish Solanki\u003c/a\u003e,\n\u003ca href=\"https://github.com/benediktjohannes\"\u003eBenedikt Johannes\u003c/a\u003e,\n\u003ca href=\"https://github.com/devareddy05\"\u003eDevendra Reddy Pennabadi\u003c/a\u003e,\n\u003ca href=\"https://github.com/smplio\"\u003eDmytro Rodionov\u003c/a\u003e,\n\u003ca href=\"https://github.com/Dreeam-qwq\"\u003eDreeam\u003c/a\u003e,\n\u003ca href=\"https://github.com/EliasHdzR\"\u003eElías Hernández Rodríguez\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/FinlayRJW\"\u003eFinlayRJW\u003c/a\u003e,\n\u003ca href=\"https://github.com/kamalkansal27\"\u003eKamal Kansal\u003c/a\u003e,\n\u003ca href=\"https://github.com/Marcono1234\"\u003eMarcono1234\u003c/a\u003e,\n\u003ca href=\"https://github.com/runningcode\"\u003eNelson Osacky\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/rkdfx\"\u003eRavi\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/rschmitt\"\u003eRyan Schmitt\u003c/a\u003e,\n\u003ca href=\"https://github.com/sschuberth\"\u003eSebastian Schuberth\u003c/a\u003e,\n\u003ca href=\"https://github.com/seung-hun-h\"\u003eseunghun.ham\u003c/a\u003e,\n\u003ca href=\"https://github.com/sk-reddy17\"\u003esk-reddy17\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/VedantMadane\"\u003eVedant Madane\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.6.0 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew :wrapper --gradle-version=9.6.0 \u0026amp;\u0026amp; ./gradlew :wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.6.0/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.6.0/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.6.0 RC3\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/3f750f03d77e42327c5f9fcb9992110088330a32\"\u003e\u003ccode\u003e3f750f0\u003c/code\u003e\u003c/a\u003e Update distro size for Gradle 9.6.0 release (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38243\"\u003e#38243\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/ae93cfa823470de24b8fd96ea04334f6affa1d96\"\u003e\u003ccode\u003eae93cfa\u003c/code\u003e\u003c/a\u003e update distro size\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7e22b56a4f32c1b6d2e532a00ebe0e5a3394f4b\"\u003e\u003ccode\u003ef7e22b5\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-3 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38227\"\u003e#38227\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/71a8eb9b7d7f41a90f82fd026fbc206c095c0e7f\"\u003e\u003ccode\u003e71a8eb9\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/70a87451716eb6d7d568ea00ad1824a4de70ab05\"\u003e\u003ccode\u003e70a8745\u003c/code\u003e\u003c/a\u003e Prepare release notes for Gradle 9.6.0RC3 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38220\"\u003e#38220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/970652223811ce4912808dedef77844f1a47bd95\"\u003e\u003ccode\u003e9706522\u003c/code\u003e\u003c/a\u003e some final polishing for release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/af308ebf8d9d3d8ba75314f6a114150734409584\"\u003e\u003ccode\u003eaf308eb\u003c/code\u003e\u003c/a\u003e Restore GradleInternal.getRootProject overload for binary compatibility (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38214\"\u003e#38214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/239361b0fb2351051782497389ff202816d8c65a\"\u003e\u003ccode\u003e239361b\u003c/code\u003e\u003c/a\u003e Restore GradleInternal.getRootProject overload for binary compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/896dc44a40e2008428f9fbb29faa92d6b7b8cac0\"\u003e\u003ccode\u003e896dc44\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-2 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38187\"\u003e#38187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/2d4ec2521c8cbcaf50258cdab827756924f82b23\"\u003e\u003ccode\u003e2d4ec25\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.04.01 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-task-list-items's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/ianhylee/crawlbot/pull/30","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianhylee%2Fcrawlbot/issues/30","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/30/packages"},{"uuid":"4713726916","node_id":"PR_kwDOR-Mw3M7pBG3i","number":28,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-02T05:24:25.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-22T05:28:28.000Z","updated_at":"2026-07-02T05:24:26.000Z","time_to_close":863757,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.6.0","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.6.0` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/juanih/openclaw-custom/pull/28","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanih%2Fopenclaw-custom/issues/28","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/28/packages"},{"uuid":"4712637118","node_id":"PR_kwDOSHbM8M7o9lqd","number":27,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-02T01:14:26.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-22T01:18:33.000Z","updated_at":"2026-07-02T01:14:28.000Z","time_to_close":863753,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.6.0","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.6.0` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/Mingjie-G/NL2UI-with-OpenClaw/pull/27","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mingjie-G%2FNL2UI-with-OpenClaw/issues/27","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/27/packages"},{"uuid":"4712545527","node_id":"PR_kwDOR-q5fM7o9TDI","number":29,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-02T00:44:23.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-22T00:48:28.000Z","updated_at":"2026-07-02T00:44:25.000Z","time_to_close":863755,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.6.0","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.6.0` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/pertain99/openclaw-better/pull/29","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/pertain99%2Fopenclaw-better/issues/29","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/29/packages"},{"uuid":"4704247175","node_id":"PR_kwDOR5upC87ojbOx","number":34,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-01T23:58:15.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-19T23:57:45.000Z","updated_at":"2026-07-01T23:58:16.000Z","time_to_close":1036830,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.0` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.5.1` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/lohchyi/openclaw/pull/34","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/lohchyi%2Fopenclaw/issues/34","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/34/packages"},{"uuid":"4703737877","node_id":"PR_kwDOR_DPZc7ohvIO","number":30,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-01T21:48:44.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-19T21:47:08.000Z","updated_at":"2026-07-01T21:48:45.000Z","time_to_close":1036896,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.0` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.5.1` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/maslovmaksim92/openclaw/pull/30","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/maslovmaksim92%2Fopenclaw/issues/30","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/30/packages"},{"uuid":"4702457505","node_id":"PR_kwDOR6o7c87odlA_","number":45,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-01T17:19:15.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-19T17:17:36.000Z","updated_at":"2026-07-01T17:19:17.000Z","time_to_close":1036899,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.0.1","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.0.1","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.2.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.0.1` | `9.2.1` |\n| com.android.test | `9.0.1` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.0` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.2.1` | `9.5.1` |\n\n\nUpdates `com.android.application` from 9.0.1 to 9.2.1\n\nUpdates `com.android.test` from 9.0.1 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/hyoseop1231/openclaw-fork/pull/45","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hyoseop1231%2Fopenclaw-fork/issues/45","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/45/packages"},{"uuid":"4695869480","node_id":"PR_kwDORFx0Zc7oH0lB","number":37,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 15 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-19T20:44:53.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-18T20:49:14.000Z","updated_at":"2026-06-19T20:44:54.000Z","time_to_close":86139,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":15,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 15 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.1` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.0` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.5.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.5.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.5.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTask provenance in reports and failure messages\u003c/li\u003e\n\u003cli\u003eType-safe accessors for precompiled Kotlin Settings plugins\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.5.1/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/atm1020\"\u003eatm1020\u003c/a\u003e,\n\u003ca href=\"https://github.com/mataha\"\u003emataha\u003c/a\u003e,\n\u003ca href=\"https://github.com/aSemy\"\u003eAdam\u003c/a\u003e,\n\u003ca href=\"https://github.com/kelemen\"\u003eAttila Kelemen\u003c/a\u003e,\n\u003ca href=\"https://github.com/britter\"\u003eBenedikt Ritter\u003c/a\u003e,\n\u003ca href=\"https://github.com/Vampire\"\u003eBjörn Kautler\u003c/a\u003e,\n\u003ca href=\"https://github.com/budindepunk\"\u003eCaro Silva Rode\u003c/a\u003e,\n\u003ca href=\"https://github.com/chanani\"\u003eCHANHAN\u003c/a\u003e,\n\u003ca href=\"https://github.com/DmitryNez\"\u003eDmitry Nezavitin\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/KugelLibelle\"\u003eKugelLibelle\u003c/a\u003e,\n\u003ca href=\"https://github.com/vmadalin\"\u003eMadalin Valceleanu\u003c/a\u003e,\n\u003ca href=\"https://github.com/quijote\"\u003eMarkus Gaisbauer\u003c/a\u003e,\n\u003ca href=\"https://github.com/koppor\"\u003eOliver Kopp\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/ploober\"\u003eploober\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/R0h1tAnand\"\u003eRohit Anand\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/usv240\"\u003eUjwal Suresh Vanjare\u003c/a\u003e,\n\u003ca href=\"https://github.com/urdak\"\u003eVictor Merkulov\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.5.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.5.1 \u0026amp;\u0026amp; ./gradlew wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.5.1/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.5.1/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.5.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/fd78213f09782e62ca4957f9cfd3d90c6c3f1767\"\u003e\u003ccode\u003efd78213\u003c/code\u003e\u003c/a\u003e Update Documentation Infrastructure: Fix scrolling issue in user manual (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37861\"\u003e#37861\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/7758437128d1c52702786ad719a13ade1b860aa8\"\u003e\u003ccode\u003e7758437\u003c/code\u003e\u003c/a\u003e fix scroll\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/2fd605fdcd69fea10570e9eb1343bbd7ca01c9d0\"\u003e\u003ccode\u003e2fd605f\u003c/code\u003e\u003c/a\u003e Only try to run as worker thread in DefaultBuildOperationQueue (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37845\"\u003e#37845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/af6984901238402386ae263d746380504e5f9138\"\u003e\u003ccode\u003eaf69849\u003c/code\u003e\u003c/a\u003e Release notes for Gradle 9.5.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37853\"\u003e#37853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f4d9d03e9bb47d2d17b6d8314fdaa32c3d0b3c1e\"\u003e\u003ccode\u003ef4d9d03\u003c/code\u003e\u003c/a\u003e Release notes for Gradle 9.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/01eda3adf40dbe97e81475e813705409dcfe1091\"\u003e\u003ccode\u003e01eda3a\u003c/code\u003e\u003c/a\u003e Address review feedback on worker-lease retry changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/7024e15139b2db9df831dd15a8b9e9052acd9a51\"\u003e\u003ccode\u003e7024e15\u003c/code\u003e\u003c/a\u003e Revert enrich file visitor with size info on \u003ccode\u003erelease\u003c/code\u003e branch (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37848\"\u003e#37848\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/d51476fda21330c037a04b43ec9a93a929d05b87\"\u003e\u003ccode\u003ed51476f\u003c/code\u003e\u003c/a\u003e Fix tryRunAsWorkerThread null-return test to match contract\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/090ebabc5b6f648e01c0269a321d80372fdbfe0f\"\u003e\u003ccode\u003e090ebab\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Add getLength() to FilePropertyVisitor.VisitState\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/bceab24677298144860f6919bdcb031e806dbf23\"\u003e\u003ccode\u003ebceab24\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix annotation\u0026quot;\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.5.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `dnsjava:dnsjava` from 3.6.4 to 3.6.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dnsjava/dnsjava/releases\"\u003ednsjava:dnsjava's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHandle canceled keys in UDP client (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle interrupts on NIO selector thread (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/396\"\u003e#396\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/397\"\u003e#397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix config option key names in README (\u003ca href=\"https://github.com/lostnet\"\u003e\u003ccode\u003e@​lostnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/399\"\u003e#399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle invalid/uninitialized file times in hosts file (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/400\"\u003e#400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003egetXxxAsByteArray()\u003c/code\u003e getters and overload with escape boolean (\u003ca href=\"https://github.com/MMauro94\"\u003e\u003ccode\u003e@​MMauro94\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/404\"\u003e#404\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/405\"\u003e#405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eNote\u003c/strong\u003e: The tag for this release is \u003ccode\u003ev3.6.5-1\u003c/code\u003e, because the v3.6.5 tag accidentally pointed to a local branch and cannot be changed anymore because of the immutable releases. The Maven artifacts from the \u003ca href=\"https://github.com/dnsjava/dnsjava/actions/runs/26331191483\"\u003eActions run\u003c/a\u003e are correct.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-1\"\u003ehttps://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-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/dnsjava/dnsjava/blob/master/Changelog\"\u003ednsjava:dnsjava's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e05/23/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.5 released\u003c/li\u003e\n\u003cli\u003eHandle canceled keys in UDP client (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle interrupts on NIO selector thread (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/396\"\u003e#396\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/397\"\u003e#397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix config option key names in README (\u003ca href=\"https://github.com/lostnet\"\u003e\u003ccode\u003e@​lostnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/399\"\u003e#399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle invalid/uninitialized file times in hosts file (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/400\"\u003e#400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd getXxxAsByteArray() getters and overload with escape boolean\n(\u003ca href=\"https://github.com/MMauro94\"\u003e\u003ccode\u003e@​MMauro94\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/404\"\u003e#404\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/405\"\u003e#405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e01/18/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.4 released\u003c/li\u003e\n\u003cli\u003eFix Zone-class serialization (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid Double DNS Lookup for Names with Labels \u0026gt;= ndots (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/388\"\u003e#388\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent NPE when calling Message#getTSIG() on DNS request with\nbad header (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/384\"\u003e#384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUnwrap an exception in the legacy callback-based async interface (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/383\"\u003e#383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent ConcurrentModificationException in NIO clients\n(\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/379\"\u003e#379\u003c/a\u003e, \u003ca href=\"https://github.com/bhaveshthakker\"\u003e\u003ccode\u003e@​bhaveshthakker\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle \u003ccode\u003enull\u003c/code\u003e in all setSearchPath overloads equally (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce warning level of invalid \u003ccode\u003ehosts\u003c/code\u003e file entries (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove a lock on the hot-path in the \u003ccode\u003ehosts\u003c/code\u003e file parser (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDoH Resolver makes use of the Multi-Release jar and tests are executed\nfor Java 8 and 11+ implementations (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix DoH Resolver initial request delay (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e01/26/2025\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.3 released\u003c/li\u003e\n\u003cli\u003eSupport custom hosts file size (\u003ca href=\"https://github.com/flaming-archer\"\u003e\u003ccode\u003e@​flaming-archer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/349\"\u003e#349\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix origin handling in zone loaded from file or stream (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/346\"\u003e#346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent TCP port leak when closing IO (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix confusing parameter name in CNAMERecord (\u003ca href=\"https://github.com/chkal\"\u003e\u003ccode\u003e@​chkal\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/354\"\u003e#354\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOptionally disable ShutdownHook in NioClient (\u003ca href=\"https://github.com/SvenssonWeb\"\u003e\u003ccode\u003e@​SvenssonWeb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTSIG algorithm names from RFC 8945\u003c/li\u003e\n\u003cli\u003eMessage.toWire can exceed MAXLENGTH (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/355\"\u003e#355\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTCP query might fail if the shared buffer is full (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/357\"\u003e#357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDynamic updates silently truncates records (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix DoH initial request using recommended nanoTime calculation\n(\u003ca href=\"https://github.com/LinZong\"\u003e\u003ccode\u003e@​LinZong\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/345\"\u003e#345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e09/21/2024\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.2 released\u003c/li\u003e\n\u003cli\u003eAdd new IANA Trust Anchor (\u003ca href=\"https://github.com/technolord\"\u003e\u003ccode\u003e@​technolord\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/337\"\u003e#337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix Zone handling with signed SOA (\u003ca href=\"https://github.com/frankarinnet\"\u003e\u003ccode\u003e@​frankarinnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/335\"\u003e#335\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e07/28/2024\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.1 released\u003c/li\u003e\n\u003cli\u003eProperly fix LookupSession doesn't cache CNAMEs (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/316\"\u003e#316\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove JEP-418 SPI to Java 18 to support EOL workflows (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/329\"\u003e#329\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e07/21/2024\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dnsjava/dnsjava/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.vintage:junit-vintage-engine` from 6.0.3 to 6.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junit-team/junit-framework/releases\"\u003eorg.junit.vintage:junit-vintage-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.1.0 = Platform 6.1.0 + Jupiter 6.1.0 + Vintage 6.1.0\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JarvisCraft\"\u003e\u003ccode\u003e@​JarvisCraft\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5633\"\u003ejunit-team/junit-framework#5633\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Maran23\"\u003e\u003ccode\u003e@​Maran23\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5644\"\u003ejunit-team/junit-framework#5644\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.1.0-RC1 = Platform 6.1.0-RC1 + Jupiter 6.1.0-RC1 + Vintage 6.1.0-RC1\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0-RC1/release-notes/\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariokhoury4\"\u003e\u003ccode\u003e@​mariokhoury4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/4574\"\u003ejunit-team/junit-framework#4574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Ogu1208\"\u003e\u003ccode\u003e@​Ogu1208\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5145\"\u003ejunit-team/junit-framework#5145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/HyungGeun94\"\u003e\u003ccode\u003e@​HyungGeun94\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5271\"\u003ejunit-team/junit-framework#5271\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yalishevant\"\u003e\u003ccode\u003e@​yalishevant\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5316\"\u003ejunit-team/junit-framework#5316\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JINU-CHANG\"\u003e\u003ccode\u003e@​JINU-CHANG\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5290\"\u003ejunit-team/junit-framework#5290\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaschdoc\"\u003e\u003ccode\u003e@​jaschdoc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5427\"\u003ejunit-team/junit-framework#5427\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kawshikbuet17\"\u003e\u003ccode\u003e@​kawshikbuet17\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5561\"\u003ejunit-team/junit-framework#5561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/msridhar\"\u003e\u003ccode\u003e@​msridhar\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5602\"\u003ejunit-team/junit-framework#5602\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.1.0-M1...r6.1.0-RC1\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.1.0-M1...r6.1.0-RC1\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.1.0-M1 = Platform 6.1.0-M1 + Jupiter 6.1.0-M1 + Vintage 6.1.0-M1\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0-M1/release-notes/\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vy\"\u003e\u003ccode\u003e@​vy\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5041\"\u003ejunit-team/junit-framework#5041\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Pankraz76\"\u003e\u003ccode\u003e@​Pankraz76\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5006\"\u003ejunit-team/junit-framework#5006\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/arukiidou\"\u003e\u003ccode\u003e@​arukiidou\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5066\"\u003ejunit-team/junit-framework#5066\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laeubi\"\u003e\u003ccode\u003e@​laeubi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5092\"\u003ejunit-team/junit-framework#5092\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jihun4452\"\u003e\u003ccode\u003e@​jihun4452\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5088\"\u003ejunit-team/junit-framework#5088\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TWiStErRob\"\u003e\u003ccode\u003e@​TWiStErRob\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5133\"\u003ejunit-team/junit-framework#5133\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.0...r6.1.0-M1\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.0...r6.1.0-M1\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/junit-team/junit-framework/commit/0dc3af1cb1973d257b5bc75d81e02454d5e4e556\"\u003e\u003ccode\u003e0dc3af1\u003c/code\u003e\u003c/a\u003e Release 6.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/1d130020c85170edcb46ce7ed1f7f78824e37c04\"\u003e\u003ccode\u003e1d13002\u003c/code\u003e\u003c/a\u003e Prepare 6.1.0 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/072b2175bbd7b0b3b26f5d928550ec7a21e68268\"\u003e\u003ccode\u003e072b217\u003c/code\u003e\u003c/a\u003e Update plugin spotless to v8.5.0 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5668\"\u003e#5668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/3a53480218f4b752a9ca77506e10632cd483c0f8\"\u003e\u003ccode\u003e3a53480\u003c/code\u003e\u003c/a\u003e Update Gradle to v9.5.1 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5666\"\u003e#5666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/0e18a20a9f98d063ae02b3ba19329143f5c7f034\"\u003e\u003ccode\u003e0e18a20\u003c/code\u003e\u003c/a\u003e Update zizmorcore/zizmor-action action to v0.5.4 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5669\"\u003e#5669\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/0a2634fb9cbbd057b02cf629d7d272c16d62be4b\"\u003e\u003ccode\u003e0a2634f\u003c/code\u003e\u003c/a\u003e Update github/codeql-action action to v4.35.5 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5671\"\u003e#5671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/4dbd5561b00ac761a62c516bfaec51c212a2d60c\"\u003e\u003ccode\u003e4dbd556\u003c/code\u003e\u003c/a\u003e Restructure workflows to have single \u0026quot;status\u0026quot; job (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5670\"\u003e#5670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/f2194cebe377512cb0ade388c62a881a0bcf5d3e\"\u003e\u003ccode\u003ef2194ce\u003c/code\u003e\u003c/a\u003e Increase timeout to reduce flakiness\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fdd2df65b763151cccbe669ea9e1c3155efcd\"\u003e\u003ccode\u003e5c8fdd2\u003c/code\u003e\u003c/a\u003e Update dependency org.apache.groovy:groovy to v5.0.6 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5659\"\u003e#5659\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/43c6982324602582902c9bdb213fd5e007f9cf3d\"\u003e\u003ccode\u003e43c6982\u003c/code\u003e\u003c/a\u003e Update dependency org.slf4j:slf4j-jdk14 to v2.0.18 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5667\"\u003e#5667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-assertions-core-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-assertions-core-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-runner-junit5-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-runner-junit5-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-runner-junit5-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-runner-junit5-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https:...\n\n_Description has been truncated_","html_url":"https://github.com/saraivabr/openclaw/pull/37","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/saraivabr%2Fopenclaw/issues/37","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/37/packages"},{"uuid":"4692710679","node_id":"PR_kwDORlezzM7n9VHc","number":32,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 15 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-20T10:17:19.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-18T13:19:24.000Z","updated_at":"2026-06-20T10:17:21.000Z","time_to_close":161875,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":15,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 15 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.1` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.0` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.5.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.5.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.5.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTask provenance in reports and failure messages\u003c/li\u003e\n\u003cli\u003eType-safe accessors for precompiled Kotlin Settings plugins\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.5.1/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/atm1020\"\u003eatm1020\u003c/a\u003e,\n\u003ca href=\"https://github.com/mataha\"\u003emataha\u003c/a\u003e,\n\u003ca href=\"https://github.com/aSemy\"\u003eAdam\u003c/a\u003e,\n\u003ca href=\"https://github.com/kelemen\"\u003eAttila Kelemen\u003c/a\u003e,\n\u003ca href=\"https://github.com/britter\"\u003eBenedikt Ritter\u003c/a\u003e,\n\u003ca href=\"https://github.com/Vampire\"\u003eBjörn Kautler\u003c/a\u003e,\n\u003ca href=\"https://github.com/budindepunk\"\u003eCaro Silva Rode\u003c/a\u003e,\n\u003ca href=\"https://github.com/chanani\"\u003eCHANHAN\u003c/a\u003e,\n\u003ca href=\"https://github.com/DmitryNez\"\u003eDmitry Nezavitin\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/KugelLibelle\"\u003eKugelLibelle\u003c/a\u003e,\n\u003ca href=\"https://github.com/vmadalin\"\u003eMadalin Valceleanu\u003c/a\u003e,\n\u003ca href=\"https://github.com/quijote\"\u003eMarkus Gaisbauer\u003c/a\u003e,\n\u003ca href=\"https://github.com/koppor\"\u003eOliver Kopp\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/ploober\"\u003eploober\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/R0h1tAnand\"\u003eRohit Anand\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/usv240\"\u003eUjwal Suresh Vanjare\u003c/a\u003e,\n\u003ca href=\"https://github.com/urdak\"\u003eVictor Merkulov\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.5.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.5.1 \u0026amp;\u0026amp; ./gradlew wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.5.1/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.5.1/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.5.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/fd78213f09782e62ca4957f9cfd3d90c6c3f1767\"\u003e\u003ccode\u003efd78213\u003c/code\u003e\u003c/a\u003e Update Documentation Infrastructure: Fix scrolling issue in user manual (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37861\"\u003e#37861\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/7758437128d1c52702786ad719a13ade1b860aa8\"\u003e\u003ccode\u003e7758437\u003c/code\u003e\u003c/a\u003e fix scroll\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/2fd605fdcd69fea10570e9eb1343bbd7ca01c9d0\"\u003e\u003ccode\u003e2fd605f\u003c/code\u003e\u003c/a\u003e Only try to run as worker thread in DefaultBuildOperationQueue (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37845\"\u003e#37845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/af6984901238402386ae263d746380504e5f9138\"\u003e\u003ccode\u003eaf69849\u003c/code\u003e\u003c/a\u003e Release notes for Gradle 9.5.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37853\"\u003e#37853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f4d9d03e9bb47d2d17b6d8314fdaa32c3d0b3c1e\"\u003e\u003ccode\u003ef4d9d03\u003c/code\u003e\u003c/a\u003e Release notes for Gradle 9.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/01eda3adf40dbe97e81475e813705409dcfe1091\"\u003e\u003ccode\u003e01eda3a\u003c/code\u003e\u003c/a\u003e Address review feedback on worker-lease retry changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/7024e15139b2db9df831dd15a8b9e9052acd9a51\"\u003e\u003ccode\u003e7024e15\u003c/code\u003e\u003c/a\u003e Revert enrich file visitor with size info on \u003ccode\u003erelease\u003c/code\u003e branch (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37848\"\u003e#37848\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/d51476fda21330c037a04b43ec9a93a929d05b87\"\u003e\u003ccode\u003ed51476f\u003c/code\u003e\u003c/a\u003e Fix tryRunAsWorkerThread null-return test to match contract\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/090ebabc5b6f648e01c0269a321d80372fdbfe0f\"\u003e\u003ccode\u003e090ebab\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Add getLength() to FilePropertyVisitor.VisitState\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/bceab24677298144860f6919bdcb031e806dbf23\"\u003e\u003ccode\u003ebceab24\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix annotation\u0026quot;\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.5.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `dnsjava:dnsjava` from 3.6.4 to 3.6.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dnsjava/dnsjava/releases\"\u003ednsjava:dnsjava's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHandle canceled keys in UDP client (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle interrupts on NIO selector thread (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/396\"\u003e#396\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/397\"\u003e#397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix config option key names in README (\u003ca href=\"https://github.com/lostnet\"\u003e\u003ccode\u003e@​lostnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/399\"\u003e#399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle invalid/uninitialized file times in hosts file (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/400\"\u003e#400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003egetXxxAsByteArray()\u003c/code\u003e getters and overload with escape boolean (\u003ca href=\"https://github.com/MMauro94\"\u003e\u003ccode\u003e@​MMauro94\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/404\"\u003e#404\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/405\"\u003e#405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eNote\u003c/strong\u003e: The tag for this release is \u003ccode\u003ev3.6.5-1\u003c/code\u003e, because the v3.6.5 tag accidentally pointed to a local branch and cannot be changed anymore because of the immutable releases. The Maven artifacts from the \u003ca href=\"https://github.com/dnsjava/dnsjava/actions/runs/26331191483\"\u003eActions run\u003c/a\u003e are correct.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-1\"\u003ehttps://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-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/dnsjava/dnsjava/blob/master/Changelog\"\u003ednsjava:dnsjava's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e05/23/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.5 released\u003c/li\u003e\n\u003cli\u003eHandle canceled keys in UDP client (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle interrupts on NIO selector thread (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/396\"\u003e#396\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/397\"\u003e#397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix config option key names in README (\u003ca href=\"https://github.com/lostnet\"\u003e\u003ccode\u003e@​lostnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/399\"\u003e#399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle invalid/uninitialized file times in hosts file (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/400\"\u003e#400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd getXxxAsByteArray() getters and overload with escape boolean\n(\u003ca href=\"https://github.com/MMauro94\"\u003e\u003ccode\u003e@​MMauro94\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/404\"\u003e#404\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/405\"\u003e#405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e01/18/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.4 released\u003c/li\u003e\n\u003cli\u003eFix Zone-class serialization (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid Double DNS Lookup for Names with Labels \u0026gt;= ndots (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/388\"\u003e#388\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent NPE when calling Message#getTSIG() on DNS request with\nbad header (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/384\"\u003e#384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUnwrap an exception in the legacy callback-based async interface (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/383\"\u003e#383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent ConcurrentModificationException in NIO clients\n(\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/379\"\u003e#379\u003c/a\u003e, \u003ca href=\"https://github.com/bhaveshthakker\"\u003e\u003ccode\u003e@​bhaveshthakker\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle \u003ccode\u003enull\u003c/code\u003e in all setSearchPath overloads equally (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce warning level of invalid \u003ccode\u003ehosts\u003c/code\u003e file entries (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove a lock on the hot-path in the \u003ccode\u003ehosts\u003c/code\u003e file parser (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDoH Resolver makes use of the Multi-Release jar and tests are executed\nfor Java 8 and 11+ implementations (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix DoH Resolver initial request delay (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e01/26/2025\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.3 released\u003c/li\u003e\n\u003cli\u003eSupport custom hosts file size (\u003ca href=\"https://github.com/flaming-archer\"\u003e\u003ccode\u003e@​flaming-archer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/349\"\u003e#349\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix origin handling in zone loaded from file or stream (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/346\"\u003e#346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent TCP port leak when closing IO (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix confusing parameter name in CNAMERecord (\u003ca href=\"https://github.com/chkal\"\u003e\u003ccode\u003e@​chkal\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/354\"\u003e#354\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOptionally disable ShutdownHook in NioClient (\u003ca href=\"https://github.com/SvenssonWeb\"\u003e\u003ccode\u003e@​SvenssonWeb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTSIG algorithm names from RFC 8945\u003c/li\u003e\n\u003cli\u003eMessage.toWire can exceed MAXLENGTH (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/355\"\u003e#355\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTCP query might fail if the shared buffer is full (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/357\"\u003e#357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDynamic updates silently truncates records (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix DoH initial request using recommended nanoTime calculation\n(\u003ca href=\"https://github.com/LinZong\"\u003e\u003ccode\u003e@​LinZong\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/345\"\u003e#345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e09/21/2024\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.2 released\u003c/li\u003e\n\u003cli\u003eAdd new IANA Trust Anchor (\u003ca href=\"https://github.com/technolord\"\u003e\u003ccode\u003e@​technolord\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/337\"\u003e#337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix Zone handling with signed SOA (\u003ca href=\"https://github.com/frankarinnet\"\u003e\u003ccode\u003e@​frankarinnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/335\"\u003e#335\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e07/28/2024\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.1 released\u003c/li\u003e\n\u003cli\u003eProperly fix LookupSession doesn't cache CNAMEs (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/316\"\u003e#316\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove JEP-418 SPI to Java 18 to support EOL workflows (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/329\"\u003e#329\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e07/21/2024\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dnsjava/dnsjava/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.vintage:junit-vintage-engine` from 6.0.3 to 6.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junit-team/junit-framework/releases\"\u003eorg.junit.vintage:junit-vintage-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.1.0 = Platform 6.1.0 + Jupiter 6.1.0 + Vintage 6.1.0\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JarvisCraft\"\u003e\u003ccode\u003e@​JarvisCraft\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5633\"\u003ejunit-team/junit-framework#5633\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Maran23\"\u003e\u003ccode\u003e@​Maran23\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5644\"\u003ejunit-team/junit-framework#5644\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.1.0-RC1 = Platform 6.1.0-RC1 + Jupiter 6.1.0-RC1 + Vintage 6.1.0-RC1\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0-RC1/release-notes/\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariokhoury4\"\u003e\u003ccode\u003e@​mariokhoury4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/4574\"\u003ejunit-team/junit-framework#4574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Ogu1208\"\u003e\u003ccode\u003e@​Ogu1208\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5145\"\u003ejunit-team/junit-framework#5145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/HyungGeun94\"\u003e\u003ccode\u003e@​HyungGeun94\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5271\"\u003ejunit-team/junit-framework#5271\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yalishevant\"\u003e\u003ccode\u003e@​yalishevant\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5316\"\u003ejunit-team/junit-framework#5316\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JINU-CHANG\"\u003e\u003ccode\u003e@​JINU-CHANG\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5290\"\u003ejunit-team/junit-framework#5290\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaschdoc\"\u003e\u003ccode\u003e@​jaschdoc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5427\"\u003ejunit-team/junit-framework#5427\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kawshikbuet17\"\u003e\u003ccode\u003e@​kawshikbuet17\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5561\"\u003ejunit-team/junit-framework#5561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/msridhar\"\u003e\u003ccode\u003e@​msridhar\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5602\"\u003ejunit-team/junit-framework#5602\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.1.0-M1...r6.1.0-RC1\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.1.0-M1...r6.1.0-RC1\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.1.0-M1 = Platform 6.1.0-M1 + Jupiter 6.1.0-M1 + Vintage 6.1.0-M1\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0-M1/release-notes/\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vy\"\u003e\u003ccode\u003e@​vy\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5041\"\u003ejunit-team/junit-framework#5041\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Pankraz76\"\u003e\u003ccode\u003e@​Pankraz76\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5006\"\u003ejunit-team/junit-framework#5006\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/arukiidou\"\u003e\u003ccode\u003e@​arukiidou\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5066\"\u003ejunit-team/junit-framework#5066\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laeubi\"\u003e\u003ccode\u003e@​laeubi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5092\"\u003ejunit-team/junit-framework#5092\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jihun4452\"\u003e\u003ccode\u003e@​jihun4452\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5088\"\u003ejunit-team/junit-framework#5088\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TWiStErRob\"\u003e\u003ccode\u003e@​TWiStErRob\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5133\"\u003ejunit-team/junit-framework#5133\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.0...r6.1.0-M1\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.0...r6.1.0-M1\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/junit-team/junit-framework/commit/0dc3af1cb1973d257b5bc75d81e02454d5e4e556\"\u003e\u003ccode\u003e0dc3af1\u003c/code\u003e\u003c/a\u003e Release 6.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/1d130020c85170edcb46ce7ed1f7f78824e37c04\"\u003e\u003ccode\u003e1d13002\u003c/code\u003e\u003c/a\u003e Prepare 6.1.0 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/072b2175bbd7b0b3b26f5d928550ec7a21e68268\"\u003e\u003ccode\u003e072b217\u003c/code\u003e\u003c/a\u003e Update plugin spotless to v8.5.0 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5668\"\u003e#5668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/3a53480218f4b752a9ca77506e10632cd483c0f8\"\u003e\u003ccode\u003e3a53480\u003c/code\u003e\u003c/a\u003e Update Gradle to v9.5.1 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5666\"\u003e#5666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/0e18a20a9f98d063ae02b3ba19329143f5c7f034\"\u003e\u003ccode\u003e0e18a20\u003c/code\u003e\u003c/a\u003e Update zizmorcore/zizmor-action action to v0.5.4 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5669\"\u003e#5669\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/0a2634fb9cbbd057b02cf629d7d272c16d62be4b\"\u003e\u003ccode\u003e0a2634f\u003c/code\u003e\u003c/a\u003e Update github/codeql-action action to v4.35.5 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5671\"\u003e#5671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/4dbd5561b00ac761a62c516bfaec51c212a2d60c\"\u003e\u003ccode\u003e4dbd556\u003c/code\u003e\u003c/a\u003e Restructure workflows to have single \u0026quot;status\u0026quot; job (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5670\"\u003e#5670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/f2194cebe377512cb0ade388c62a881a0bcf5d3e\"\u003e\u003ccode\u003ef2194ce\u003c/code\u003e\u003c/a\u003e Increase timeout to reduce flakiness\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fdd2df65b763151cccbe669ea9e1c3155efcd\"\u003e\u003ccode\u003e5c8fdd2\u003c/code\u003e\u003c/a\u003e Update dependency org.apache.groovy:groovy to v5.0.6 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5659\"\u003e#5659\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/43c6982324602582902c9bdb213fd5e007f9cf3d\"\u003e\u003ccode\u003e43c6982\u003c/code\u003e\u003c/a\u003e Update dependency org.slf4j:slf4j-jdk14 to v2.0.18 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5667\"\u003e#5667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-assertions-core-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-assertions-core-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-runner-junit5-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-runner-junit5-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-runner-junit5-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-runner-junit5-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https:...\n\n_Description has been truncated_","html_url":"https://github.com/stvn101/openclaw/pull/32","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/stvn101%2Fopenclaw/issues/32","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/32/packages"},{"uuid":"4687410963","node_id":"PR_kwDOR92bW87nsB1w","number":30,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 17 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-19T22:04:56.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-17T22:08:26.000Z","updated_at":"2026-06-19T22:04:57.000Z","time_to_close":172590,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":17,"packages":[{"name":"com.android.application","old_version":"9.0.1","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.0.1","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.10","new_version":"6.1.11","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 14 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.0.1` | `9.2.1` |\n| com.android.test | `9.0.1` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.10` | `6.1.11` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.1` |\n\n\nUpdates `com.android.application` from 9.0.1 to 9.2.1\n\nUpdates `com.android.test` from 9.0.1 to 9.2.1\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dnsjava:dnsjava` from 3.6.4 to 3.6.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dnsjava/dnsjava/releases\"\u003ednsjava:dnsjava's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHandle canceled keys in UDP client (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle interrupts on NIO selector thread (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/396\"\u003e#396\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/397\"\u003e#397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix config option key names in README (\u003ca href=\"https://github.com/lostnet\"\u003e\u003ccode\u003e@​lostnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/399\"\u003e#399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle invalid/uninitialized file times in hosts file (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/400\"\u003e#400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003egetXxxAsByteArray()\u003c/code\u003e getters and overload with escape boolean (\u003ca href=\"https://github.com/MMauro94\"\u003e\u003ccode\u003e@​MMauro94\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/404\"\u003e#404\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/405\"\u003e#405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eNote\u003c/strong\u003e: The tag for this release is \u003ccode\u003ev3.6.5-1\u003c/code\u003e, because the v3.6.5 tag accidentally pointed to a local branch and cannot be changed anymore because of the immutable releases. The Maven artifacts from the \u003ca href=\"https://github.com/dnsjava/dnsjava/actions/runs/26331191483\"\u003eActions run\u003c/a\u003e are correct.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-1\"\u003ehttps://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/s...\n\n_Description has been truncated_","html_url":"https://github.com/bhaylorina/openclaw-zero-token-fixed/pull/30","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhaylorina%2Fopenclaw-zero-token-fixed/issues/30","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/30/packages"}],"issue_packages":[{"old_version":"3.6.0","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-07-04T05:40:54.000Z","version_change":"3.6.0 → 3.6.5","issue":{"uuid":"4807809950","node_id":"PR_kwDOGl3uh87tzSkX","number":237,"state":"open","title":"deps(deps): bump the other-deps group across 1 directory with 48 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-07-04T05:40:54.000Z","updated_at":"2026-07-04T05:41:02.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"other-deps","update_count":48,"packages":[{"name":"org.yaml:snakeyaml","old_version":"2.2","new_version":"2.6"},{"name":"org.slf4j:slf4j-api","old_version":"1.7.15","new_version":"2.0.18"},{"name":"org.apache.logging.log4j:log4j-api","old_version":"2.25.4","new_version":"2.26.1"},{"name":"org.apache.logging.log4j:log4j-core","old_version":"2.25.4","new_version":"2.26.1"},{"name":"org.apache.logging.log4j:log4j-1.2-api","old_version":"2.25.4","new_version":"2.26.1"},{"name":"org.apache.logging.log4j:log4j-slf4j-impl","old_version":"2.25.4","new_version":"2.26.1"},{"name":"com.mysql:mysql-connector-j","old_version":"8.4.0","new_version":"9.7.0","repository_url":"https://github.com/mysql/mysql-connector-j"},{"name":"org.apache.hadoop:hadoop-client","old_version":"3.3.6","new_version":"3.5.0"},{"name":"org.apache.hadoop:hadoop-common","old_version":"3.3.6","new_version":"3.5.0"},{"name":"org.apache.hadoop:hadoop-hdfs","old_version":"3.3.6","new_version":"3.5.0"},{"name":"org.apache.hadoop:hadoop-mapreduce-client-core","old_version":"3.3.6","new_version":"3.5.0"},{"name":"com.alibaba.nacos:nacos-client","old_version":"2.1.2","new_version":"3.2.2","repository_url":"https://github.com/alibaba/nacos"},{"name":"com.alibaba:fastjson","old_version":"2.0.52","new_version":"2.0.62","repository_url":"https://github.com/alibaba/fastjson2"},{"name":"com.fasterxml.jackson.core:jackson-core","old_version":"2.21.4","new_version":"2.22.0","repository_url":"https://github.com/FasterXML/jackson-core"},{"name":"com.fasterxml.jackson.core:jackson-databind","old_version":"2.21.4","new_version":"2.22.0","repository_url":"https://github.com/FasterXML/jackson"},{"name":"com.jayway.jsonpath:json-path","old_version":"2.9.0","new_version":"3.0.0","repository_url":"https://github.com/jayway/JsonPath"},{"name":"com.google.protobuf:protobuf-java","old_version":"3.25.5","new_version":"4.35.1","repository_url":"https://github.com/protocolbuffers/protobuf"},{"name":"net.minidev:json-smart","old_version":"2.5.2","new_version":"2.6.0","repository_url":"https://github.com/netplex/json-smart-v2"},{"name":"net.minidev:accessors-smart","old_version":"2.5.0","new_version":"2.6.0","repository_url":"https://github.com/netplex/json-smart-v2"},{"name":"commons-net:commons-net","old_version":"3.10.0","new_version":"3.13.0","repository_url":"https://github.com/apache/commons-net"},{"name":"com.squareup.okio:okio","old_version":"3.4.0","new_version":"3.17.0","repository_url":"https://github.com/square/okio"},{"name":"commons-cli:commons-cli","old_version":"1.5.0","new_version":"1.11.0","repository_url":"https://github.com/apache/commons-cli"},{"name":"dnsjava:dnsjava","old_version":"3.6.0","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.codehaus.plexus:plexus-utils","old_version":"3.6.1","new_version":"4.0.3","repository_url":"https://github.com/codehaus-plexus/plexus-utils"},{"name":"at.yawk.lz4:lz4-java","old_version":"1.10.1","new_version":"1.11.0","repository_url":"https://github.com/yawkat/lz4-java"},{"name":"commons-io:commons-io","old_version":"2.15.1","new_version":"2.22.0"},{"name":"com.google.errorprone:error_prone_core","old_version":"2.31.0","new_version":"2.50.0","repository_url":"https://github.com/google/error-prone"},{"name":"org.codehaus.mojo:versions-maven-plugin","old_version":"2.14.2","new_version":"2.21.0","repository_url":"https://github.com/mojohaus/versions"},{"name":"org.apache.maven.plugins:maven-enforcer-plugin","old_version":"3.5.0","new_version":"3.6.3","repository_url":"https://github.com/apache/maven-enforcer"},{"name":"org.apache.maven.plugins:maven-pmd-plugin","old_version":"3.21.0","new_version":"3.28.0","repository_url":"https://github.com/apache/maven-pmd-plugin"},{"name":"org.jacoco:jacoco-maven-plugin","old_version":"0.8.12","new_version":"0.8.15","repository_url":"https://github.com/jacoco/jacoco"},{"name":"org.apache.maven.plugins:maven-compiler-plugin","old_version":"3.10.0","new_version":"3.15.0","repository_url":"https://github.com/apache/maven-compiler-plugin"},{"name":"org.apache.maven.plugins:maven-surefire-plugin","old_version":"3.0.0-M5","new_version":"3.6.0-M1","repository_url":"https://github.com/apache/maven-surefire"},{"name":"com.diffplug.spotless:spotless-maven-plugin","old_version":"2.23.0","new_version":"3.8.0","repository_url":"https://github.com/diffplug/spotless"},{"name":"org.apache.maven.plugins:maven-checkstyle-plugin","old_version":"3.1.2","new_version":"3.6.0","repository_url":"https://github.com/apache/maven-checkstyle-plugin"},{"name":"com.github.spotbugs:spotbugs-maven-plugin","old_version":"4.8.6.6","new_version":"4.10.2.0","repository_url":"https://github.com/spotbugs/spotbugs-maven-plugin"},{"name":"org.apache.maven.plugins:maven-shade-plugin","old_version":"3.5.1","new_version":"3.6.2","repository_url":"https://github.com/apache/maven-shade-plugin"},{"name":"org.scala-lang:scala-library","old_version":"2.12.7","new_version":"3.8.4","repository_url":"https://github.com/scala/scala3"},{"name":"org.apache.kafka:kafka-clients","old_version":"4.1.2","new_version":"4.3.1"},{"name":"com.fasterxml.jackson.core:jackson-annotations","old_version":"2.21","new_version":"2.22","repository_url":"https://github.com/FasterXML/jackson"},{"name":"com.h2database:h2","old_version":"2.2.224","new_version":"2.4.240","repository_url":"https://github.com/h2database/h2database"},{"name":"com.nimbusds:nimbus-jose-jwt","old_version":"10.0.2","new_version":"10.9.1"},{"name":"org.apache.maven.plugins:maven-assembly-plugin","old_version":"3.6.0","new_version":"3.8.0","repository_url":"https://github.com/apache/maven-assembly-plugin"},{"name":"org.apache.maven.plugins:maven-jar-plugin","old_version":"3.3.0","new_version":"3.5.0","repository_url":"https://github.com/apache/maven-jar-plugin"},{"name":"org.apache.paimon:paimon-flink-1.20","old_version":"1.4.1","new_version":"1.4.2"},{"name":"org.apache.paimon:paimon-flink-cdc","old_version":"1.4.1","new_version":"1.4.2"},{"name":"org.mongodb:mongodb-driver-sync","old_version":"4.11.1","new_version":"5.8.0","repository_url":"https://github.com/mongodb/mongo-java-driver"},{"name":"org.apache.kafka:connect-api","old_version":"3.6.1","new_version":"4.3.1"}],"path":null,"ecosystem":"maven"},"body":"Bumps the other-deps group with 48 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.yaml:snakeyaml](https://bitbucket.org/snakeyaml/snakeyaml) | `2.2` | `2.6` |\n| org.slf4j:slf4j-api | `1.7.15` | `2.0.18` |\n| org.apache.logging.log4j:log4j-api | `2.25.4` | `2.26.1` |\n| org.apache.logging.log4j:log4j-core | `2.25.4` | `2.26.1` |\n| org.apache.logging.log4j:log4j-1.2-api | `2.25.4` | `2.26.1` |\n| org.apache.logging.log4j:log4j-slf4j-impl | `2.25.4` | `2.26.1` |\n| [com.mysql:mysql-connector-j](https://github.com/mysql/mysql-connector-j) | `8.4.0` | `9.7.0` |\n| org.apache.hadoop:hadoop-client | `3.3.6` | `3.5.0` |\n| org.apache.hadoop:hadoop-common | `3.3.6` | `3.5.0` |\n| org.apache.hadoop:hadoop-hdfs | `3.3.6` | `3.5.0` |\n| org.apache.hadoop:hadoop-mapreduce-client-core | `3.3.6` | `3.5.0` |\n| [com.alibaba.nacos:nacos-client](https://github.com/alibaba/nacos) | `2.1.2` | `3.2.2` |\n| [com.alibaba:fastjson](https://github.com/alibaba/fastjson2) | `2.0.52` | `2.0.62` |\n| [com.fasterxml.jackson.core:jackson-core](https://github.com/FasterXML/jackson-core) | `2.21.4` | `2.22.0` |\n| [com.fasterxml.jackson.core:jackson-databind](https://github.com/FasterXML/jackson) | `2.21.4` | `2.22.0` |\n| [com.jayway.jsonpath:json-path](https://github.com/jayway/JsonPath) | `2.9.0` | `3.0.0` |\n| [com.google.protobuf:protobuf-java](https://github.com/protocolbuffers/protobuf) | `3.25.5` | `4.35.1` |\n| [net.minidev:json-smart](https://github.com/netplex/json-smart-v2) | `2.5.2` | `2.6.0` |\n| [net.minidev:accessors-smart](https://github.com/netplex/json-smart-v2) | `2.5.0` | `2.6.0` |\n| [commons-net:commons-net](https://github.com/apache/commons-net) | `3.10.0` | `3.13.0` |\n| [com.squareup.okio:okio](https://github.com/square/okio) | `3.4.0` | `3.17.0` |\n| [commons-cli:commons-cli](https://github.com/apache/commons-cli) | `1.5.0` | `1.11.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.0` | `3.6.5` |\n| [org.codehaus.plexus:plexus-utils](https://github.com/codehaus-plexus/plexus-utils) | `3.6.1` | `4.0.3` |\n| [at.yawk.lz4:lz4-java](https://github.com/yawkat/lz4-java) | `1.10.1` | `1.11.0` |\n| commons-io:commons-io | `2.15.1` | `2.22.0` |\n| [com.google.errorprone:error_prone_core](https://github.com/google/error-prone) | `2.31.0` | `2.50.0` |\n| [org.codehaus.mojo:versions-maven-plugin](https://github.com/mojohaus/versions) | `2.14.2` | `2.21.0` |\n| [org.apache.maven.plugins:maven-enforcer-plugin](https://github.com/apache/maven-enforcer) | `3.5.0` | `3.6.3` |\n| [org.apache.maven.plugins:maven-pmd-plugin](https://github.com/apache/maven-pmd-plugin) | `3.21.0` | `3.28.0` |\n| [org.jacoco:jacoco-maven-plugin](https://github.com/jacoco/jacoco) | `0.8.12` | `0.8.15` |\n| [org.apache.maven.plugins:maven-compiler-plugin](https://github.com/apache/maven-compiler-plugin) | `3.10.0` | `3.15.0` |\n| [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) | `3.0.0-M5` | `3.6.0-M1` |\n| [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless) | `2.23.0` | `3.8.0` |\n| [org.apache.maven.plugins:maven-checkstyle-plugin](https://github.com/apache/maven-checkstyle-plugin) | `3.1.2` | `3.6.0` |\n| [com.github.spotbugs:spotbugs-maven-plugin](https://github.com/spotbugs/spotbugs-maven-plugin) | `4.8.6.6` | `4.10.2.0` |\n| [org.apache.maven.plugins:maven-shade-plugin](https://github.com/apache/maven-shade-plugin) | `3.5.1` | `3.6.2` |\n| [org.scala-lang:scala-library](https://github.com/scala/scala3) | `2.12.7` | `3.8.4` |\n| org.apache.kafka:kafka-clients | `4.1.2` | `4.3.1` |\n| [com.fasterxml.jackson.core:jackson-annotations](https://github.com/FasterXML/jackson) | `2.21` | `2.22` |\n| [com.h2database:h2](https://github.com/h2database/h2database) | `2.2.224` | `2.4.240` |\n| [com.nimbusds:nimbus-jose-jwt](https://bitbucket.org/connect2id/nimbus-jose-jwt) | `10.0.2` | `10.9.1` |\n| [org.apache.maven.plugins:maven-assembly-plugin](https://github.com/apache/maven-assembly-plugin) | `3.6.0` | `3.8.0` |\n| [org.apache.maven.plugins:maven-jar-plugin](https://github.com/apache/maven-jar-plugin) | `3.3.0` | `3.5.0` |\n| org.apache.paimon:paimon-flink-1.20 | `1.4.1` | `1.4.2` |\n| org.apache.paimon:paimon-flink-cdc | `1.4.1` | `1.4.2` |\n| [org.mongodb:mongodb-driver-sync](https://github.com/mongodb/mongo-java-driver) | `4.11.1` | `5.8.0` |\n| org.apache.kafka:connect-api | `3.6.1` | `4.3.1` |\n\n\nUpdates `org.yaml:snakeyaml` from 2.2 to 2.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/015ab57b3a789f85cf8967f6f3431035d928d9bc\"\u003e\u003ccode\u003e015ab57\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/4795519ef773da23c8816a4e932f9aaffd630f8c\"\u003e\u003ccode\u003e4795519\u003c/code\u003e\u003c/a\u003e Update info\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/9c36c69034617a1c2e06b5b9b6da4073416279b8\"\u003e\u003ccode\u003e9c36c69\u003c/code\u003e\u003c/a\u003e Introduce devcontainer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/0c5b3e513a8a3971f7c97404f73fadebb63b73c0\"\u003e\u003ccode\u003e0c5b3e5\u003c/code\u003e\u003c/a\u003e fix: add debug level to internal logger\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/a65b13170d1b221af062d6aa90fd7741ed7ea7cd\"\u003e\u003ccode\u003ea65b131\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into devcontainers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/788a98b92bfd1696e95a0a48eb1d652d80660149\"\u003e\u003ccode\u003e788a98b\u003c/code\u003e\u003c/a\u003e Update changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/556b4bfec56355987f292f0ee515798b3a2eb3e0\"\u003e\u003ccode\u003e556b4bf\u003c/code\u003e\u003c/a\u003e Add info for devcontainer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/0828c39da732f89844c0c66d7f55169417f8cd16\"\u003e\u003ccode\u003e0828c39\u003c/code\u003e\u003c/a\u003e ops: migrate deployment from OSSRH to Central Portal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/30d6a3a64809f0f6d3d9fd901a85b7c3cda94930\"\u003e\u003ccode\u003e30d6a3a\u003c/code\u003e\u003c/a\u003e Add a test for issue 1108\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/commits/2da4c6d8bfe0590dab56a5319366dc3b6558b9b5\"\u003e\u003ccode\u003e2da4c6d\u003c/code\u003e\u003c/a\u003e Remove unrelated code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://bitbucket.org/snakeyaml/snakeyaml/branches/compare/snakeyaml-2.6..snakeyaml-2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.slf4j:slf4j-api` from 1.7.15 to 2.0.18\n\nUpdates `org.apache.logging.log4j:log4j-api` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-core` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-1.2-api` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-slf4j-impl` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-core` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-1.2-api` from 2.25.4 to 2.26.1\n\nUpdates `org.apache.logging.log4j:log4j-slf4j-impl` from 2.25.4 to 2.26.1\n\nUpdates `com.mysql:mysql-connector-j` from 8.4.0 to 9.7.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mysql/mysql-connector-j/blob/release/9.x/CHANGES\"\u003ecom.mysql:mysql-connector-j's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003ch1\u003e\u003ca href=\"https://dev.mysql.com/doc/relnotes/connector-j/en/\"\u003ehttps://dev.mysql.com/doc/relnotes/connector-j/en/\u003c/a\u003e\u003c/h1\u003e\n\u003cp\u003eVersion 9.7.0\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#119863 (Bug#38951042), Inaccurate decoding of negative TIME durations in Binary Protocol (Cursor Mode).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eWL#17215, Implement JDBC 4.3/4.5 Statement/Connection.enquote* methods.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#119245 (Bug#38599240), Select into fix breaks queries with 'into' in them. (reopened)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#119659 (Bug#38916595), BinaryResultsetReader fails to consume EOF packet after column definitions when EOF is not deprecated.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eVersion 9.6.0\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#118002 (Bug#37843004), The setFetchSize() method in the Statement class may have a potential bug.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#113130 (Bug#36043125), getGeneratedKeys() returns a zero resultset with non-key-generating statements.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#113336 (Bug#36080226), Inconsistent getUpdateCount() Behavior with allowMultiQueries.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#118234 (Bug#37975837), A potential bugs in Mysql Connector/J.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#113413 (Bug#36107426), Connection.changeUser cannot be done after DriverManager.loginTimeout elapses.\nThanks to Kazuhisa Kawashima for his contribution.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#119271 (Bug#38599496), Connector/J fails to accept legacy value zeroDateTimeBehavior=convertToNull on multi-host URLs (failover).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#119245 (Bug#38599240), Select into fix breaks queries with 'into' in them.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eVersion 9.5.0\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#72036 (Bug#18403804), XA isSameRM() shouldn't take database into account.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#62693 (Bug#16722068), XAConnection savepoint capability.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#81128 (Bug#23146631), Master host list overwritten by slave list when loadBalanceConnectionGroup used.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#19887224, RUNNING THE TEST SUITE WITH SOCKSPROXY* PROPERTIES HANGS IN TEST TESTBUG56429.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#98699 (Bug#30932850), Allow empty keyStore file for keyStoreTypes that do not require files.\nThanks to Kolbe Kegel for his contribution.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#118938 (Bug#38396227), DatabaseMetaDataInformationSchema#getSchemas has a bug.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#99292 (Bug#31195955), Contribution: Support Windows time zone 'Coordinated Universal Time'.\nThanks to Frédéric Barrière for his contribution.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix for Bug#107094 (Bug#34104230), NullPointerException when calling equals with null on MultiHostConnectionProxy.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/0aade1f13bcc98faf7dda5c02e782481eb291f62\"\u003e\u003ccode\u003e0aade1f\u003c/code\u003e\u003c/a\u003e Fix for Bug#119863 (Bug#38951042), Inaccurate decoding of negative TIME durat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/b6d5baabb5a9c4d01fccaafde032e8356b0ab5b8\"\u003e\u003ccode\u003eb6d5baa\u003c/code\u003e\u003c/a\u003e Update for GPL license book.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/a7cc5a9c8ec1c5ca7dcf97627935052c768a910e\"\u003e\u003ccode\u003ea7cc5a9\u003c/code\u003e\u003c/a\u003e Fix for DateTimeTest failures after some of the work done for WL#16669 in MyS...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/6a0c818f9619291251b33a868d4f8b0d70b676cb\"\u003e\u003ccode\u003e6a0c818\u003c/code\u003e\u003c/a\u003e WL#17215, Implement JDBC 4.3/4.5 Statement/Connection.enquote* methods.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/5f96e85b0b0ff3fc9326fb346e05c88e45af02a7\"\u003e\u003ccode\u003e5f96e85\u003c/code\u003e\u003c/a\u003e Fix for Bug#119245 (Bug#38599240), Select into fix breaks queries with 'into'...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/8d779fc31cb87906e86e7ea7dd316ed2778f85cd\"\u003e\u003ccode\u003e8d779fc\u003c/code\u003e\u003c/a\u003e Fix for Bug#119659 (Bug#38916595), BinaryResultsetReader fails to consume EOF...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/139117975bb31e8fb5a74887db23bbc6eda9ba92\"\u003e\u003ccode\u003e1391179\u003c/code\u003e\u003c/a\u003e Copyright header year bump.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/5c764b4b30b8aaa244665951146787e6b20f0639\"\u003e\u003ccode\u003e5c764b4\u003c/code\u003e\u003c/a\u003e Post-release version bump.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/fdef61f4af21fa9e0ac334ff0664ec754c164cc0\"\u003e\u003ccode\u003efdef61f\u003c/code\u003e\u003c/a\u003e Update copyright year.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mysql/mysql-connector-j/commit/43aced76f8e2a261f7eca62d3715ecf932108753\"\u003e\u003ccode\u003e43aced7\u003c/code\u003e\u003c/a\u003e Update for GPL license book.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mysql/mysql-connector-j/compare/8.4.0...9.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.hadoop:hadoop-client` from 3.3.6 to 3.5.0\n\nUpdates `org.apache.hadoop:hadoop-common` from 3.3.6 to 3.5.0\n\nUpdates `org.apache.hadoop:hadoop-hdfs` from 3.3.6 to 3.5.0\n\nUpdates `org.apache.hadoop:hadoop-mapreduce-client-core` from 3.3.6 to 3.5.0\n\nUpdates `com.alibaba.nacos:nacos-client` from 2.1.2 to 3.2.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/alibaba/nacos/releases\"\u003ecom.alibaba.nacos:nacos-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.2 (May 29th, 2026)\u003c/h2\u003e\n\u003cp\u003eNacos 3.2.2 is mainly a bugfix and experience-improvement release for the 3.2 series.\u003c/p\u003e\n\u003cp\u003eThis release focuses on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eConsole experience improvements for Config, Naming, MCP, Skill, AI resources, and namespace workflows.\u003c/li\u003e\n\u003cli\u003eStability and compatibility fixes across Config, Naming, plugins, startup scripts, and AI resource handling.\u003c/li\u003e\n\u003cli\u003eAI Registry import, discovery, publishing, subscription, and security improvements.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor AI Registry and Console users, this release adds or improves:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImporting AI resources from operator-configured external registries.\u003c/li\u003e\n\u003cli\u003eSkill well-known discovery, Skill subscription, and latest protocol adapter support.\u003c/li\u003e\n\u003cli\u003eConfig diff confirmation, Prompt Markdown download, and Skill upload lifecycle improvements.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIt also fixes bugs across Config, Naming, Console, MCP, Skill, plugins, and client-side watch handling.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eDetailed changes in this release:\u003c/p\u003e\n\u003ch2\u003eFeature\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14695\"\u003e#14695\u003c/a\u003e Support label-based matching for Config gray rules.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14848\"\u003e#14848\u003c/a\u003e Add Prompt version download as Markdown.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14907\"\u003e#14907\u003c/a\u003e Support specifying a target version when uploading Skills.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14985\"\u003e#14985\u003c/a\u003e Add persistent instance deregistration support in Console v3.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15022\"\u003e#15022\u003c/a\u003e Support optional Skill auto-publish after review.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15031\"\u003e#15031\u003c/a\u003e Extend nacos.functionMode with microservice and ai modes.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15142\"\u003e#15142\u003c/a\u003e Support drag-and-drop ZIP upload and batch Skill upload.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15183\"\u003e#15183\u003c/a\u003e Support importing AI resources from operator-configured external registries, including MCP resources, Skill well-known resources, importer APIs, SPI models, built-in presets, and source-based import UI.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15234\"\u003e#15234\u003c/a\u003e Support commit messages when uploading AI skills.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15247\"\u003e#15247\u003c/a\u003e Support the latest Skill well-known protocol in the registry adapter.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15263\"\u003e#15263\u003c/a\u003e Add Skill subscription support and refactor AgentSpec subscription to HTTP polling with 304 handling.\u003c/p\u003e\n\u003ch2\u003eEnhancement/Refactor\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14833\"\u003e#14833\u003c/a\u003e\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15221\"\u003e#15221\u003c/a\u003e Route AI resource version trace logging through trace events and the default plugin.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14911\"\u003e#14911\u003c/a\u003e Split LDAP authentication into an optional plugin and package the LDAP plugin JAR.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14983\"\u003e#14983\u003c/a\u003e Enforce non-frontmatter Markdown body content during Skill validation.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15059\"\u003e#15059\u003c/a\u003e Add the reviewed version status after pipeline approval for Skill versions.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15066\"\u003e#15066\u003c/a\u003e Harden AgentSpec ZIP parsing with Zip Slip, Zip Bomb, and entry-count defenses.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15138\"\u003e#15138\u003c/a\u003e Add Config publish diff confirmation in the new Console.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15145\"\u003e#15145\u003c/a\u003e Restrict forcePublish to valid Skill states and add pipeline stale flags for re-edit.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15164\"\u003e#15164\u003c/a\u003e Make Skill ZIP entry and size limits configurable.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15165\"\u003e#15165\u003c/a\u003e Parallelize AgentSpec storage writes to align with Skill behavior.\n\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15258\"\u003e#15258\u003c/a\u003e Enable reviewed status by default for the AI publish pipeline.\u003c/p\u003e\n\u003ch2\u003eBugFix\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/cdf4e1b6aa76d50839a0b8d3c8806430d14fef86\"\u003e\u003ccode\u003ecdf4e1b\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14122\"\u003e#14122\u003c/a\u003e] Skip unsupported skills.sh sources (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15271\"\u003e#15271\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/fe962a65ca0ff81ea0b38d5e143ed9c953b45439\"\u003e\u003ccode\u003efe962a6\u003c/code\u003e\u003c/a\u003e Stabilize auth and agent spec cache tests (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15270\"\u003e#15270\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/9299084cbf44525ff1817f0fcd246442933085a6\"\u003e\u003ccode\u003e9299084\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15087\"\u003e#15087\u003c/a\u003e] Upgrade safe dependencies and enable default AI importers (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15\"\u003e#15\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/4ac3b7dcbc3eb732314fa54e15b23c9494d27b55\"\u003e\u003ccode\u003e4ac3b7d\u003c/code\u003e\u003c/a\u003e Add since annotations for skill subscription APIs (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15267\"\u003e#15267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/2f290dbc5025aee1128764c0e97ac877bb306546\"\u003e\u003ccode\u003e2f290db\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15258\"\u003e#15258\u003c/a\u003e] Enable reviewed status by default (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15259\"\u003e#15259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/0a69ba2430b7a35d0a5f400236476f46b3999442\"\u003e\u003ccode\u003e0a69ba2\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15263\"\u003e#15263\u003c/a\u003e] Refactor AgentSpec subscription to HTTP polling with 304, and ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/9136e9864f431e53b443a736b5f8e1ea3c8afe4b\"\u003e\u003ccode\u003e9136e98\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Since\"\u003e\u003ccode\u003e@​Since\u003c/code\u003e\u003c/a\u003e annotations for public APIs (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15266\"\u003e#15266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/27a14fb47a65a96fc679dfcd60df2227a73890b8\"\u003e\u003ccode\u003e27a14fb\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/14992\"\u003e#14992\u003c/a\u003e] Add v3 naming APIs to DistroFilter (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15262\"\u003e#15262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/5932ad2811060b40c28f4982ef7df171ffe0e604\"\u003e\u003ccode\u003e5932ad2\u003c/code\u003e\u003c/a\u003e [ISSUE \u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15138\"\u003e#15138\u003c/a\u003e] Add config publish diff confirmation (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15261\"\u003e#15261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/nacos/commit/6c996d167a99bdf7d626ffec7529f97c9e36b45f\"\u003e\u003ccode\u003e6c996d1\u003c/code\u003e\u003c/a\u003e fix(logging): bind Logger to the declaring class in four places (\u003ca href=\"https://redirect.github.com/alibaba/nacos/issues/15257\"\u003e#15257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/alibaba/nacos/compare/2.1.2...3.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.alibaba:fastjson` from 2.0.52 to 2.0.62\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/alibaba/fastjson2/releases\"\u003ecom.alibaba:fastjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003efastjson 2.0.61版本发布\u003c/h2\u003e\n\u003ch1\u003eFASTJSON 2.0.61 Release Notes\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eRelease Date:\u003c/strong\u003e 07 Feb 2026\n\u003cstrong\u003eTag:\u003c/strong\u003e 2.0.61 (170f71f)\u003c/p\u003e\n\u003ch2\u003eOverview\u003c/h2\u003e\n\u003cp\u003eThis is a regularly scheduled maintenance release with feature enhancements, performance improvements, and bug fixes. Users should upgrade as needed.\u003c/p\u003e\n\u003ch2\u003eChanges \u0026amp; Bug Fixes\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eFixed issue where Jackson's \u003ccode\u003e@JsonProperty\u003c/code\u003e on methods was being ignored in record types \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3893\"\u003e#3893\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed multiple \u003ccode\u003eArrayIndexOutOfBoundsException\u003c/code\u003e issues in \u003ccode\u003eJSONReaderUTF8\u003c/code\u003e, \u003ccode\u003eJSONReaderASCII\u003c/code\u003e, and \u003ccode\u003eJSONReader\u003c/code\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3883\"\u003e#3883\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved performance when parsing JSON with numerous escape characters \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3889\"\u003e#3889\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed conflict where global Date writer overrides \u003ccode\u003e@JSONField\u003c/code\u003e format \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3864\"\u003e#3864\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eTypeUtils.castToTimestamp\u003c/code\u003e compatibility issues when upgrading from 1.2.83 \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3906\"\u003e#3906\u003c/a\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3907\"\u003e#3907\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded support for serializing non-finite numbers (NaN, Infinity) as strings \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3911\"\u003e#3911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded default value support for \u003ccode\u003egetString\u003c/code\u003e and other \u003ccode\u003egetXXX\u003c/code\u003e methods \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3880\"\u003e#3880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed double quotes issue in \u003ccode\u003eTypeUtils.cast\u003c/code\u003e with Long global converter \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3932\"\u003e#3932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Java 8 \u003ccode\u003eTimeModule\u003c/code\u003e support including improved \u003ccode\u003eYearMonth\u003c/code\u003e support \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3934\"\u003e#3934\u003c/a\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3935\"\u003e#3935\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed scientific notation floating point deserialization errors \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3917\"\u003e#3917\u003c/a\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3939\"\u003e#3939\u003c/a\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3955\"\u003e#3955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded serialization support for \u003ccode\u003eorg.w3c.dom.Node\u003c/code\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3960\"\u003e#3960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed exception when parsing object keys with emoji and escape characters \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3928\"\u003e#3928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed generic type inference for \u003ccode\u003eList\u003c/code\u003e subclasses during deserialization \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3926\"\u003e#3926\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded support for custom error messages in JSON Schema validation \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/1559\"\u003e#1559\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eparse(InputStream)\u003c/code\u003e overload with default context \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3946\"\u003e#3946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eDirectByteBuffer\u003c/code\u003e \u003ccode\u003eUnsupportedOperationException\u003c/code\u003e for \u003ccode\u003ejava.nio.ByteBuffer#array\u003c/code\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3894\"\u003e#3894\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded support for composing multiple filters (\u003ccode\u003ePropertyFilter\u003c/code\u003e, \u003ccode\u003ePropertyPreFilter\u003c/code\u003e, etc.) \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3877\"\u003e#3877\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed incorrect overflow check when parsing \u003ccode\u003eBigInteger\u003c/code\u003e as \u003ccode\u003eDouble\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eEnhanced security checks in hex digit processing\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003ereadString\u003c/code\u003e performance in \u003ccode\u003eJSONReaderUTF8\u003c/code\u003e/\u003ccode\u003eJSONReaderUTF16\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed various issues with \u003ccode\u003eWriteNulls\u003c/code\u003e, \u003ccode\u003eErrorOnNullForPrimitives\u003c/code\u003e, \u003ccode\u003eNotWriteDefaultValue\u003c/code\u003e, and other features\u003c/li\u003e\n\u003cli\u003eAdded ProGuard rules for fields affected by reflection operations\u003c/li\u003e\n\u003cli\u003eFixed cast error when using \u003ccode\u003e-Dfastjson2.creator=reflect\u003c/code\u003e \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/1563\"\u003e#1563\u003c/a\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch2\u003eMaven Dependency Configuration\u003c/h2\u003e\n\u003ch3\u003eStandard Version\u003c/h3\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;dependency\u0026gt;\r\n    \u0026lt;groupId\u0026gt;com.alibaba.fastjson2\u0026lt;/groupId\u0026gt;\r\n    \u0026lt;artifactId\u0026gt;fastjson2\u0026lt;/artifactId\u0026gt;\r\n    \u0026lt;version\u0026gt;2.0.61\u0026lt;/version\u0026gt;\r\n\u0026lt;/dependency\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eAndroid 5 Optimized Version\u003c/h3\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/7ddfd76e03bd263f4dd3a33dd403bd2387d2c801\"\u003e\u003ccode\u003e7ddfd76\u003c/code\u003e\u003c/a\u003e 2.0.62 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/5a050751f15bacca225d479883764f3a707640bb\"\u003e\u003ccode\u003e5a05075\u003c/code\u003e\u003c/a\u003e fix: JSONPath syntax error when 'in'/'rlike' filter follows other filters (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/14ea6ea41fe828b65489b3fa176bc09f28968db7\"\u003e\u003ccode\u003e14ea6ea\u003c/code\u003e\u003c/a\u003e fix: Map subclass loses \u003ca href=\"https://github.com/type\"\u003e\u003ccode\u003e@​type\u003c/code\u003e\u003c/a\u003e when serialized with ValueFilter (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/3984\"\u003e#3984\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/4029\"\u003e#4029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/ede10a52aaac350476984a911b48481fd064cb3a\"\u003e\u003ccode\u003eede10a5\u003c/code\u003e\u003c/a\u003e Docs/comprehensive documentation overhaul (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/4028\"\u003e#4028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/7bceed23f1c6df607dd02c887fa1841d22aa0a89\"\u003e\u003ccode\u003e7bceed2\u003c/code\u003e\u003c/a\u003e fix: skip whitespace after non-comma in readLocalDate for UTF8 reader (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/4005\"\u003e#4005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/05e822003e14a194bd40dc180c5c2c636336252f\"\u003e\u003ccode\u003e05e8220\u003c/code\u003e\u003c/a\u003e fix: DateUtils multiple bugs — bitwise OR typo, bounds check off-by-one, wron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/b3eb46c2d124385e39e6166d1374cdbe220a4205\"\u003e\u003ccode\u003eb3eb46c\u003c/code\u003e\u003c/a\u003e Refactor/improve object reader creator asm (\u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/4021\"\u003e#4021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/bbb1d0250aed2a0aba4c3dbbebdf9bfb2c2fed9b\"\u003e\u003ccode\u003ebbb1d02\u003c/code\u003e\u003c/a\u003e fix: IOUtils.regionMatches off-by-one and parseInt error message corruption (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/f15dc36ce50828ba4bc2222ea5422a4d24ae22b2\"\u003e\u003ccode\u003ef15dc36\u003c/code\u003e\u003c/a\u003e fix: writeFloat(float[]) ArrayIndexOutOfBoundsException when WriteNonStringVa...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alibaba/fastjson2/commit/f95194786605279eeb0e248892a619936a4ed5f8\"\u003e\u003ccode\u003ef951947\u003c/code\u003e\u003c/a\u003e fix: JSONPath nested array filter returning incorrect results, for issue \u003ca href=\"https://redirect.github.com/alibaba/fastjson2/issues/400\"\u003e#400\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/alibaba/fastjson2/compare/2.0.52...2.0.62\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson.core:jackson-core` from 2.21.4 to 2.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/d763562443cc9d6e224a6265ca3710195c813cf5\"\u003e\u003ccode\u003ed763562\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/e5c69fe5f7be957490d52dae70787e7a8138ddda\"\u003e\u003ccode\u003ee5c69fe\u003c/code\u003e\u003c/a\u003e Re-do 2.22.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/0ba6a369eaa19a71b2b63fe40b1e9d317c0eb522\"\u003e\u003ccode\u003e0ba6a36\u003c/code\u003e\u003c/a\u003e Bump version after release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/b106011025f6447695e21ddbb9fd3952d284d10c\"\u003e\u003ccode\u003eb106011\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/18a7fe416a0bf666f6c2ddc6da883bc96382dd2d\"\u003e\u003ccode\u003e18a7fe4\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/503a14ffa4a74ad56a02fd25f0cd997df163c647\"\u003e\u003ccode\u003e503a14f\u003c/code\u003e\u003c/a\u003e Re-do 2.22.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/ab95bc0056119f08ef721849be5e5f2c256b82cd\"\u003e\u003ccode\u003eab95bc0\u003c/code\u003e\u003c/a\u003e ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/0a4b8dedee08e159fddca5eb8e812c1ad881017a\"\u003e\u003ccode\u003e0a4b8de\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/719a42f3676ab3c10e3cd057966807b2206151e7\"\u003e\u003ccode\u003e719a42f\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-core/commit/92488484b64bc348c43e5a7ff910d93c2f9e9b9c\"\u003e\u003ccode\u003e9248848\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-core-2.22.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-core/compare/jackson-core-2.21.4...jackson-core-2.22.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson.core:jackson-databind` from 2.21.4 to 2.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/FasterXML/jackson/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.jayway.jsonpath:json-path` from 2.9.0 to 3.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jayway/JsonPath/releases\"\u003ecom.jayway.jsonpath:json-path's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejson-path-3.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadding jackson3 provider (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1066\"\u003e#1066\u003c/a\u003e) by \u003ca href=\"https://github.com/bsa01\"\u003e\u003ccode\u003e@​bsa01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/json-path/JsonPath/pull/1067\"\u003ejson-path/JsonPath#1067\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare Version 3.0.0 - Java 17 baseline with Jackson 3 by \u003ca href=\"https://github.com/kallestenflo\"\u003e\u003ccode\u003e@​kallestenflo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/json-path/JsonPath/pull/1072\"\u003ejson-path/JsonPath#1072\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/bsa01\"\u003e\u003ccode\u003e@​bsa01\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/json-path/JsonPath/pull/1067\"\u003ejson-path/JsonPath#1067\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/json-path/JsonPath/compare/json-path-2.10.0...json-path-3.0.0\"\u003ehttps://github.com/json-path/JsonPath/compare/json-path-2.10.0...json-path-3.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ejson-path-2.10.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBumps dependency versions by \u003ca href=\"https://github.com/kallestenflo\"\u003e\u003ccode\u003e@​kallestenflo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/json-path/JsonPath/pull/1057\"\u003ejson-path/JsonPath#1057\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003enet.minidev:json-smart:2.6.0\u003c/li\u003e\n\u003cli\u003eorg.slf4j:slf4j-api:2.0.17\u003c/li\u003e\n\u003cli\u003ecom.google.code.gson:gson:2.13.2\u003c/li\u003e\n\u003cli\u003eorg.hamcrest:hamcrest:3.0\u003c/li\u003e\n\u003cli\u003ecom.fasterxml.jackson.core:jackson-databind:2.19.2\u003c/li\u003e\n\u003cli\u003eorg.json:json:20250517\u003c/li\u003e\n\u003cli\u003eorg.apache.tapestry:tapestry-json:5.9.0\u003c/li\u003e\n\u003cli\u003ejakarta.json:jakarta.json-api:2.1.3\u003c/li\u003e\n\u003cli\u003ejakarta.json.bind:jakarta.json.bind-api:2.0.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/json-path/JsonPath/compare/json-path-2.9.0...json-path-2.10.0\"\u003ehttps://github.com/json-path/JsonPath/compare/json-path-2.9.0...json-path-2.10.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/json-path/JsonPath/commit/62a4c9f0f65ba3f625aa0867d64c528ba72d09ec\"\u003e\u003ccode\u003e62a4c9f\u003c/code\u003e\u003c/a\u003e Prepare Version 3.0.0 - Java 17 baseline with Jackson 3 (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1072\"\u003e#1072\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/470b56661adc7b677f5e225529f80c1fefb4104d\"\u003e\u003ccode\u003e470b566\u003c/code\u003e\u003c/a\u003e Prepare version 3.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/5a7f29e3f0c1403a94971e93309fe7cfbccf3bd3\"\u003e\u003ccode\u003e5a7f29e\u003c/code\u003e\u003c/a\u003e adding jackson3 provider (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1066\"\u003e#1066\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1067\"\u003e#1067\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/b6c60b3deef74a83eaa92c8dca7d0bc097e957cd\"\u003e\u003ccode\u003eb6c60b3\u003c/code\u003e\u003c/a\u003e Prepare next version (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1059\"\u003e#1059\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/a42738784bbfd77ded36ed07b28dab6b7e00e2af\"\u003e\u003ccode\u003ea427387\u003c/code\u003e\u003c/a\u003e Release 2.10.0 (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1058\"\u003e#1058\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/8e3b92f5ce859c875c399d97ce8e527829194568\"\u003e\u003ccode\u003e8e3b92f\u003c/code\u003e\u003c/a\u003e Bumps dependency versions (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1057\"\u003e#1057\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/45333e0a310af70ad48d34d306da30af1e8e6314\"\u003e\u003ccode\u003e45333e0\u003c/code\u003e\u003c/a\u003e [CI] Remove Java 18 from build matrix (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1005\"\u003e#1005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/3732a85549f3b4c61de4d7eaaab9c3848bcca3aa\"\u003e\u003ccode\u003e3732a85\u003c/code\u003e\u003c/a\u003e Upgrade net.minidev:json-smart from 2.5.0 to 2.5.1 (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/1004\"\u003e#1004\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/2d4cc06cd24e3422e29e2de02f154b34d75f5de0\"\u003e\u003ccode\u003e2d4cc06\u003c/code\u003e\u003c/a\u003e Upgrade to gradle 8.5 and add java 21 build (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/995\"\u003e#995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/json-path/JsonPath/commit/83ced526cb62672e16905acb6efd952e9bfd60ab\"\u003e\u003ccode\u003e83ced52\u003c/code\u003e\u003c/a\u003e Remove web-test project (\u003ca href=\"https://redirect.github.com/jayway/JsonPath/issues/994\"\u003e#994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jayway/JsonPath/compare/json-path-2.9.0...json-path-3.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.google.protobuf:protobuf-java` from 3.25.5 to 4.35.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/protocolbuffers/protobuf/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.minidev:json-smart` from 2.5.2 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/netplex/json-smart-v2/releases\"\u003enet.minidev:json-smart's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.6.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix JSONObject.merge blocks overwriting (\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/175\"\u003e#175\u003c/a\u003e) by \u003ca href=\"https://github.com/caimo\"\u003e\u003ccode\u003e@​caimo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/238\"\u003enetplex/json-smart-v2#238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild: prepare for next version by \u003ca href=\"https://github.com/hezhangjian\"\u003e\u003ccode\u003e@​hezhangjian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/241\"\u003enetplex/json-smart-v2#241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: use standard charset object instead by \u003ca href=\"https://github.com/hezhangjian\"\u003e\u003ccode\u003e@​hezhangjian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/242\"\u003enetplex/json-smart-v2#242\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd Spotless + Maven wrapper by \u003ca href=\"https://github.com/ccudennec-otto\"\u003e\u003ccode\u003e@​ccudennec-otto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/246\"\u003enetplex/json-smart-v2#246\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix JSONArray merge(Object)(\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/51\"\u003e#51\u003c/a\u003e) by \u003ca href=\"https://github.com/caimo\"\u003e\u003ccode\u003e@​caimo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/247\"\u003enetplex/json-smart-v2#247\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.11.4 to 5.12.0 in /json-smart 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/netplex/json-smart-v2/pull/253\"\u003enetplex/json-smart-v2#253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.11.4 to 5.12.0 in /json-smart-action 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/netplex/json-smart-v2/pull/248\"\u003enetplex/json-smart-v2#248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.2 to 2.44.3 in /json-smart 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/netplex/json-smart-v2/pull/252\"\u003enetplex/json-smart-v2#252\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-compiler-plugin from 3.13.0 to 3.14.0 in /json-smart 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/netplex/json-smart-v2/pull/251\"\u003enetplex/json-smart-v2#251\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.2 to 2.44.3 in /json-smart-action 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/netplex/json-smart-v2/pull/250\"\u003enetplex/json-smart-v2#250\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-compiler-plugin from 3.13.0 to 3.14.0 in /json-smart-action 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/netplex/json-smart-v2/pull/249\"\u003enetplex/json-smart-v2#249\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.0 to 5.12.1 in /json-smart 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/netplex/json-smart-v2/pull/256\"\u003enetplex/json-smart-v2#256\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.0 to 5.12.1 in /json-smart-action 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/netplex/json-smart-v2/pull/255\"\u003enetplex/json-smart-v2#255\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.3 to 2.44.4 in /json-smart-action 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/netplex/json-smart-v2/pull/263\"\u003enetplex/json-smart-v2#263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.3 to 2.44.4 in /json-smart 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/netplex/json-smart-v2/pull/260\"\u003enetplex/json-smart-v2#260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.1 to 5.12.2 in /json-smart-action 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/netplex/json-smart-v2/pull/262\"\u003enetplex/json-smart-v2#262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.1 to 5.12.2 in /json-smart 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/netplex/json-smart-v2/pull/261\"\u003enetplex/json-smart-v2#261\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.4 to 2.44.5 in /json-smart 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/netplex/json-smart-v2/pull/268\"\u003enetplex/json-smart-v2#268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.2 to 5.13.0 in /json-smart 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/netplex/json-smart-v2/pull/267\"\u003enetplex/json-smart-v2#267\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.2 to 5.13.0 in /json-smart-action 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/netplex/json-smart-v2/pull/266\"\u003enetplex/json-smart-v2#266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.4 to 2.44.5 in /json-smart-action 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/netplex/json-smart-v2/pull/265\"\u003enetplex/json-smart-v2#265\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8 in /json-smart-action 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/netplex/json-smart-v2/pull/276\"\u003enetplex/json-smart-v2#276\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.13.0 to 5.13.4 in /json-smart 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/netplex/json-smart-v2/pull/274\"\u003enetplex/json-smart-v2#274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8 in /json-smart 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/netplex/json-smart-v2/pull/273\"\u003enetplex/json-smart-v2#273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.5 to 2.46.1 in /json-smart-action 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/netplex/json-smart-v2/pull/277\"\u003enetplex/json-smart-v2#277\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.13.0 to 5.13.4 in /json-smart-action 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/netplex/json-smart-v2/pull/278\"\u003enetplex/json-smart-v2#278\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.5 to 2.46.1 in /json-smart 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/netplex/json-smart-v2/pull/275\"\u003enetplex/json-smart-v2#275\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix unpack dependencies failed (\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/176\"\u003e#176\u003c/a\u003e) by \u003ca href=\"https://github.com/pcHwang2\"\u003e\u003ccode\u003e@​pcHwang2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/257\"\u003enetplex/json-smart-v2#257\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix Issue 177 (support incomplet json messages) by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/254\"\u003enetplex/json-smart-v2#254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eimprove github action by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/279\"\u003enetplex/json-smart-v2#279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emutiple updates, new github workflow, more coverage.... by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/280\"\u003enetplex/json-smart-v2#280\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/281\"\u003enetplex/json-smart-v2#281\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/pcHwang2\"\u003e\u003ccode\u003e@​pcHwang2\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/257\"\u003enetplex/json-smart-v2#257\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/netplex/json-smart-v2/compare/2.5.2...v2.6.0\"\u003ehttps://github.com/netplex/json-smart-v2/compare/2.5.2...v2.6.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/netplex/json-smart-v2/commit/ebf7cf8cf0dccef246cd1ed0d052074d787a2de4\"\u003e\u003ccode\u003eebf7cf8\u003c/code\u003e\u003c/a\u003e try deploy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/95a9bc3a55e81ad529388652049a2d0604b97a66\"\u003e\u003ccode\u003e95a9bc3\u003c/code\u003e\u003c/a\u003e try somthink else\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/4aac0d725475b920cf18e5af6c32e694bc16085e\"\u003e\u003ccode\u003e4aac0d7\u003c/code\u003e\u003c/a\u003e make it publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/d3a86df285450a116a75cc77919e27e60e8ddc73\"\u003e\u003ccode\u003ed3a86df\u003c/code\u003e\u003c/a\u003e deploy one by one\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/13d282b60c9afbb01822c2522bec5be20f692c97\"\u003e\u003ccode\u003e13d282b\u003c/code\u003e\u003c/a\u003e patch deploy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/b4940f5ade3a2ed9b1b3956e79141dd2972d4555\"\u003e\u003ccode\u003eb4940f5\u003c/code\u003e\u003c/a\u003e patch deploy verbosity\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/edc6e6ebb1a72cfb7da82e4888c9c5d42f0e7bf6\"\u003e\u003ccode\u003eedc6e6e\u003c/code\u003e\u003c/a\u003e hange publishing plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/49e150f4c1d03a83e44800b02d643cc791f27a98\"\u003e\u003ccode\u003e49e150f\u003c/code\u003e\u003c/a\u003e add git tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/29543a18f92a7cf7a69d8083b9093ca4a7cd022f\"\u003e\u003ccode\u003e29543a1\u003c/code\u003e\u003c/a\u003e replace snapshot by the release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/580360225b9b766fb5fd66031c0257870632a583\"\u003e\u003ccode\u003e5803602\u003c/code\u003e\u003c/a\u003e force release to central\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netplex/json-smart-v2/compare/2.5.2...v2.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.minidev:accessors-smart` 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/netplex/json-smart-v2/releases\"\u003enet.minidev:accessors-smart's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.6.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix JSONObject.merge blocks overwriting (\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/175\"\u003e#175\u003c/a\u003e) by \u003ca href=\"https://github.com/caimo\"\u003e\u003ccode\u003e@​caimo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/238\"\u003enetplex/json-smart-v2#238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild: prepare for next version by \u003ca href=\"https://github.com/hezhangjian\"\u003e\u003ccode\u003e@​hezhangjian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/241\"\u003enetplex/json-smart-v2#241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: use standard charset object instead by \u003ca href=\"https://github.com/hezhangjian\"\u003e\u003ccode\u003e@​hezhangjian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/242\"\u003enetplex/json-smart-v2#242\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd Spotless + Maven wrapper by \u003ca href=\"https://github.com/ccudennec-otto\"\u003e\u003ccode\u003e@​ccudennec-otto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/246\"\u003enetplex/json-smart-v2#246\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix JSONArray merge(Object)(\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/51\"\u003e#51\u003c/a\u003e) by \u003ca href=\"https://github.com/caimo\"\u003e\u003ccode\u003e@​caimo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/247\"\u003enetplex/json-smart-v2#247\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.11.4 to 5.12.0 in /json-smart 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/netplex/json-smart-v2/pull/253\"\u003enetplex/json-smart-v2#253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.11.4 to 5.12.0 in /json-smart-action 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/netplex/json-smart-v2/pull/248\"\u003enetplex/json-smart-v2#248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.2 to 2.44.3 in /json-smart 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/netplex/json-smart-v2/pull/252\"\u003enetplex/json-smart-v2#252\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-compiler-plugin from 3.13.0 to 3.14.0 in /json-smart 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/netplex/json-smart-v2/pull/251\"\u003enetplex/json-smart-v2#251\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.2 to 2.44.3 in /json-smart-action 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/netplex/json-smart-v2/pull/250\"\u003enetplex/json-smart-v2#250\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-compiler-plugin from 3.13.0 to 3.14.0 in /json-smart-action 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/netplex/json-smart-v2/pull/249\"\u003enetplex/json-smart-v2#249\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.0 to 5.12.1 in /json-smart 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/netplex/json-smart-v2/pull/256\"\u003enetplex/json-smart-v2#256\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.0 to 5.12.1 in /json-smart-action 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/netplex/json-smart-v2/pull/255\"\u003enetplex/json-smart-v2#255\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.3 to 2.44.4 in /json-smart-action 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/netplex/json-smart-v2/pull/263\"\u003enetplex/json-smart-v2#263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.3 to 2.44.4 in /json-smart 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/netplex/json-smart-v2/pull/260\"\u003enetplex/json-smart-v2#260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.1 to 5.12.2 in /json-smart-action 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/netplex/json-smart-v2/pull/262\"\u003enetplex/json-smart-v2#262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.1 to 5.12.2 in /json-smart 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/netplex/json-smart-v2/pull/261\"\u003enetplex/json-smart-v2#261\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.4 to 2.44.5 in /json-smart 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/netplex/json-smart-v2/pull/268\"\u003enetplex/json-smart-v2#268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.2 to 5.13.0 in /json-smart 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/netplex/json-smart-v2/pull/267\"\u003enetplex/json-smart-v2#267\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.12.2 to 5.13.0 in /json-smart-action 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/netplex/json-smart-v2/pull/266\"\u003enetplex/json-smart-v2#266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.4 to 2.44.5 in /json-smart-action 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/netplex/json-smart-v2/pull/265\"\u003enetplex/json-smart-v2#265\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8 in /json-smart-action 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/netplex/json-smart-v2/pull/276\"\u003enetplex/json-smart-v2#276\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.13.0 to 5.13.4 in /json-smart 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/netplex/json-smart-v2/pull/274\"\u003enetplex/json-smart-v2#274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8 in /json-smart 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/netplex/json-smart-v2/pull/273\"\u003enetplex/json-smart-v2#273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.5 to 2.46.1 in /json-smart-action 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/netplex/json-smart-v2/pull/277\"\u003enetplex/json-smart-v2#277\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump junit.version from 5.13.0 to 5.13.4 in /json-smart-action 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/netplex/json-smart-v2/pull/278\"\u003enetplex/json-smart-v2#278\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump com.diffplug.spotless:spotless-maven-plugin from 2.44.5 to 2.46.1 in /json-smart 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/netplex/json-smart-v2/pull/275\"\u003enetplex/json-smart-v2#275\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix unpack dependencies failed (\u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/176\"\u003e#176\u003c/a\u003e) by \u003ca href=\"https://github.com/pcHwang2\"\u003e\u003ccode\u003e@​pcHwang2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/257\"\u003enetplex/json-smart-v2#257\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix Issue 177 (support incomplet json messages) by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/254\"\u003enetplex/json-smart-v2#254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eimprove github action by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/279\"\u003enetplex/json-smart-v2#279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emutiple updates, new github workflow, more coverage.... by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/280\"\u003enetplex/json-smart-v2#280\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade by \u003ca href=\"https://github.com/UrielCh\"\u003e\u003ccode\u003e@​UrielCh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/281\"\u003enetplex/json-smart-v2#281\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/pcHwang2\"\u003e\u003ccode\u003e@​pcHwang2\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/257\"\u003enetplex/json-smart-v2#257\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/netplex/json-smart-v2/compare/2.5.2...v2.6.0\"\u003ehttps://github.com/netplex/json-smart-v2/compare/2.5.2...v2.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e2.5.2\u003c/h2\u003e\n\u003ch2\u003eAbout CVE-2024-57699\u003c/h2\u003e\n\u003cp\u003eThanks for \u003ca href=\"https://github.com/ccudennec-otto\"\u003e\u003ccode\u003e@​ccudennec-otto\u003c/code\u003e\u003c/a\u003e Some remarks on the CVE, more discussions in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/236\"\u003e#236\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eas mentioned \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/issues/232\"\u003ehere\u003c/a\u003e it is quite unlikely that the vulnerability is exploited if you come here because of Spring Security / \u003ccode\u003ecom.nimbusds:oauth2-oidc-sdk\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ethe code changes for the upcoming release will \u0026quot;only\u0026quot; fix the default modes provided by \u003ca href=\"https://github.com/netplex/json-smart-v2/blob/master/json-smart/src/main/java/net/minidev/json/parser/JSONParser.java#L118\"\u003eJSONParser\u003c/a\u003e, e.g. \u003ccode\u003eMODE_RFC4627\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eif you create the \u003ccode\u003eJSONParser\u003c/code\u003e manually / with custom options, make sure you set option \u003ccode\u003eLIMIT_JSON_DEPTH\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003esince that's what \u0026quot;connect2id\u0026quot; is doing in their library, they were responsible for fixing it. They've already provided a new 11.x release that fixes the \u003ccode\u003eJSONParser\u003c/code\u003e setup on their side, i.e. you rather need \u003cem\u003etheir\u003c/em\u003e fixed version and not version 2.5.2 of json-smart\u003c/li\u003e\n\u003cli\u003eas stated \u003ca href=\"https://bitbucket.org/connect2id/oauth-2.0-sdk-with-openid-connect-extensions/issues/494/\"\u003ehere\u003c/a\u003e, they would also need to backport the fix to the versions that \u003ca href=\"https://github.com/spring-projects/spring-security/blob/27cb1154f25c74a6532dbd222ead9da53e880020/gradle/libs.versions.toml#L25\"\u003eSpring Security needs\u003c/a\u003e IMHO\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix CVE-2024-57699 for predefined parsers by \u003ca href=\"https://github.com/ccudennec-otto\"\u003e\u003ccode\u003e@​ccudennec-otto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netplex/json-smart-v2/pull/233\"\u003enetplex/json-smart-v2#233\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/netplex/json-smart-v2/commit/ebf7cf8cf0dccef246cd1ed0d052074d787a2de4\"\u003e\u003ccode\u003eebf7cf8\u003c/code\u003e\u003c/a\u003e try deploy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/95a9bc3a55e81ad529388652049a2d0604b97a66\"\u003e\u003ccode\u003e95a9bc3\u003c/code\u003e\u003c/a\u003e try somthink else\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/4aac0d725475b920cf18e5af6c32e694bc16085e\"\u003e\u003ccode\u003e4aac0d7\u003c/code\u003e\u003c/a\u003e make it publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/d3a86df285450a116a75cc77919e27e60e8ddc73\"\u003e\u003ccode\u003ed3a86df\u003c/code\u003e\u003c/a\u003e deploy one by one\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/13d282b60c9afbb01822c2522bec5be20f692c97\"\u003e\u003ccode\u003e13d282b\u003c/code\u003e\u003c/a\u003e patch deploy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/b4940f5ade3a2ed9b1b3956e79141dd2972d4555\"\u003e\u003ccode\u003eb4940f5\u003c/code\u003e\u003c/a\u003e patch deploy verbosity\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/edc6e6ebb1a72cfb7da82e4888c9c5d42f0e7bf6\"\u003e\u003ccode\u003eedc6e6e\u003c/code\u003e\u003c/a\u003e hange publishing plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/49e150f4c1d03a83e44800b02d643cc791f27a98\"\u003e\u003ccode\u003e49e150f\u003c/code\u003e\u003c/a\u003e add git tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/29543a18f92a7cf7a69d8083b9093ca4a7cd022f\"\u003e\u003ccode\u003e29543a1\u003c/code\u003e\u003c/a\u003e replace snapshot by the release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netplex/json-smart-v2/commit/580360225b9b766fb5fd66031c0257870632a583\"\u003e\u003ccode\u003e5803602\u003c/code\u003e\u003c/a\u003e force release to central\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netplex/json-smart-v2/compare/2.5.0...v2.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `commons-net:commons-net` from 3.10.0 to 3.13.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/commons-net/blob/master/RELEASE-NOTES.txt\"\u003ecommons-net:commons-net's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eApache Commons Net 3.13.0 Release Notes\u003c/h2\u003e\n\u003cp\u003eThe Apache Commons Net team is pleased to announce the release of Apache Commons Net 3.13.0.\u003c/p\u003e\n\u003cp\u003eApache Commons Net library contains a collection of network utilities and protocol implementations.\nSupported protocols include Echo, Finger, FTP, NNTP, NTP, POP3(S), SMTP(S), Telnet, and Whois.\u003c/p\u003e\n\u003cp\u003eThis is a feature and maintenance release. Java 8 or later is required.\u003c/p\u003e\n\u003cp\u003eFor complete information on Apache Commons Net, including instructions on how to submit bug reports,\npatches, or suggestions for improvement, see the Apache Commons Net website:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://commons.apache.org/proper/commons-net/\"\u003ehttps://commons.apache.org/proper/commons-net/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDownload page: \u003ca href=\"https://commons.apache.org/proper/commons-net/download_net.cgi\"\u003ehttps://commons.apache.org/proper/commons-net/download_net.cgi\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew features\u003c/h2\u003e\n\u003cp\u003eo           Add DatagramSocketClient.getDefaultTimeoutDuration() and deprecate getDefaultTimeout(). Thanks to Gary Gregory.\no NET-741:  Add subnet IPv6 handling with SubnetUtils6 \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/391\"\u003e#391\u003c/a\u003e. Thanks to Maros Orsak, Gary Gregory.\u003c/p\u003e\n\u003ch2\u003eFixed Bugs\u003c/h2\u003e\n\u003cp\u003eo           DaytimeTCPClientTest now should now pass inside most VPNs. Thanks to Henri Biestro, Gary Gregory.\no           Migrate tests to JUnit5 \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/358\"\u003e#358\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/359\"\u003e#359\u003c/a\u003e. Thanks to Jakub Kupczyk, Gary Gregory.\no           Fix malformed Javadoc comments. Thanks to Gary Gregory.\no           IMAPExportMbox now restores the current thread's interrupt flag when catching InterruptedException. Thanks to Gary Gregory.\no           IOUtil.readWrite() now restores the current thread's interrupt flag when catching InterruptedException. Thanks to Gary Gregory.\no           TelnetInputStream now restores the current thread's interrupt flag when catching InterruptedException. Thanks to Gary Gregory.\no NET-740:  FTP fails to parse listings for Linux vsftpd in Chinese or Japanese \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/393\"\u003e#393\u003c/a\u003e. Thanks to Jianwei Guo, Gary Gregory.\no           TelnetInputStream.read() doesn't preserve the original InterruptedException as the cause of its InterruptedIOException. Thanks to Gary Gregory.\no           FTPClient._storeFile(String, String, InputStream) doesn't always close it's internal socket when an exception is thrown early in processing. Thanks to Gary Gregory.\no           ListenerList.removeListener(T) now ignores null input to avoid a NullPointerException. Thanks to Gary Gregory.\no           ListenerList.addListener(T) now ignores null input. Thanks to Gary Gregory.\no           Fix typo in FTPConnectionClosedException message from FTP.getReply(boolean). Thanks to Gary Gregory.\no           Reimplement Util.copyReader() with IOUtils.copyLarge(). Thanks to Gary Gregory.\no           Reimplement Util.copyStream() with IOUtils.copyLarge(). Thanks to Gary Gregory.\no           Reimplement Util.copyStream() with IOUtils.copyLarge(). Thanks to Gary Gregory.\no           Deprecate Util.copyReader(Reader, Writer) in favor of IOUtils.copyLarge(Reader, Writer). Thanks to Gary Gregory.\u003c/p\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cp\u003eo           Bump org.apache.commons:commons-parent from 85 to 97 \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/371\"\u003e#371\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/388\"\u003e#388\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/apache/commons-net/issues/389\"\u003e#389\u003c/a\u003e. Thanks to Gary Gregory, Dependabot.\no           Bump org.apache.commons:commons-lang3 from 3.18.0 to 3.19.0. Thanks to Gary Gregory, Dependabot.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/35fa0dff3e8660359832e72631ff3cf557b543a8\"\u003e\u003ccode\u003e35fa0df\u003c/code\u003e\u003c/a\u003e Prepare for the release candidate 3.13.0 RC1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/1cc5b6e77d86bb54131742fee175e7c700bbf2ca\"\u003e\u003ccode\u003e1cc5b6e\u003c/code\u003e\u003c/a\u003e Prepare for the next release candidate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/a4b246e085c1d3ce5936806d8f85d2e826daca8a\"\u003e\u003ccode\u003ea4b246e\u003c/code\u003e\u003c/a\u003e Reuse IOUtils.copyLarge()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/e5ca262cea38b2f889eb003818cf9f97a6395ad6\"\u003e\u003ccode\u003ee5ca262\u003c/code\u003e\u003c/a\u003e Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/3cb18ec82ef0b3640536137639763a682994a61e\"\u003e\u003ccode\u003e3cb18ec\u003c/code\u003e\u003c/a\u003e Deprecate Util.copyReader(Reader, Writer) in favor of\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/3373d77db2376665a034e753e3646251b3d23aa4\"\u003e\u003ccode\u003e3373d77\u003c/code\u003e\u003c/a\u003e Reimplement Util.copyReader() with IOUtils.copyLarge()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/3be2077ccf1da69614a7883ed352037e30f3366f\"\u003e\u003ccode\u003e3be2077\u003c/code\u003e\u003c/a\u003e Reimplement Util.copyStream() with IOUtils.copyLarge()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/7b41144008427acceea596ac74f36e716ea2586e\"\u003e\u003ccode\u003e7b41144\u003c/code\u003e\u003c/a\u003e Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/1b584b493ffa6a1b42cbda3c7f683e073f1a3bdf\"\u003e\u003ccode\u003e1b584b4\u003c/code\u003e\u003c/a\u003e Fix typo in FTPConnectionClosedException message from\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-net/commit/3792023843b95dabe60fb745287cae94c8a44be5\"\u003e\u003ccode\u003e3792023\u003c/code\u003e\u003c/a\u003e Javadoc\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/commons-net/compare/rel/commons-net-3.10.0...rel/commons-net-3.13.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okio:okio` from 3.4.0 to 3.17.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okio/blob/master/CHANGELOG.md\"\u003ecom.squareup.okio:okio's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.17.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-03-11\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eNew: Adjust down the Kotlin stdlib dependency to [Kotlin 2.1.21][kotlin_2_1_21]. Okio is built\nwith an up-to-date Kotlin compiler (2.2.21), but depends on an older kotlin-stdlib. We're doing\nthis so you can update Okio and Kotlin independently.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Return the correct timestamp in \u003ccode\u003eFileMetadata.createdAtMillis\u003c/code\u003e on Kotlin/Native on UNIX\nplatforms. We were incorrectly using the POSIX \u003ccode\u003ectime\u003c/code\u003e (\u003cem\u003echange\u003c/em\u003e time) instead of the\n\u003ccode\u003ebirthtime\u003c/code\u003e. With this fix Okio now prefers \u003ccode\u003estatx()\u003c/code\u003e over \u003ccode\u003estat()\u003c/code\u003e on native platforms. This\nAPI first appeared in Linux in 4.11 (2017) and Android in API 30 (2020).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.16.4\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-11-17\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Don't delay triggering timeouts. In 3.16.0 we introduced a regression that caused timeouts\nto fi...\n\n_Description has been truncated_","html_url":"https://github.com/SophiaData/Bigdata_Code_Tutorial/pull/237","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/SophiaData%2FBigdata_Code_Tutorial/issues/237","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/237/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":"/apps/android","pr_created_at":"2026-07-02T05:39:58.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4791601017","node_id":"PR_kwDOTLI6a87s-pau","number":10,"state":"closed","title":"build(deps): bump the android-deps group in /apps/android with 26 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-06T01:56:23.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-02T05:39:58.000Z","updated_at":"2026-07-06T01:56:25.000Z","time_to_close":332185,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":26,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"}],"path":"/apps/android","ecosystem":"maven"},"body":"Bumps the android-deps group in /apps/android with 26 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.1` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.6.1` |\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSuppor...\n\n_Description has been truncated_","html_url":"https://github.com/EIcekid/openclaw/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/EIcekid%2Fopenclaw/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-07-02T00:02:06.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4790093958","node_id":"PR_kwDOSOd66s7s57k7","number":44,"state":"closed","title":"Bump the android-deps group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T23:54:47.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-02T00:02:06.000Z","updated_at":"2026-07-03T23:54:48.000Z","time_to_close":172361,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"android-deps","update_count":21,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 14 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\u003c/li\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/Roman-Roz/Assistent/pull/44","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Roman-Roz%2FAssistent/issues/44","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/44/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-07-01T23:52:52.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4790053401","node_id":"PR_kwDOSOOxo87s5zb8","number":48,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T23:44:22.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-01T23:52:52.000Z","updated_at":"2026-07-03T23:44:24.000Z","time_to_close":172290,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":21,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 14 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\u003c/li\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/Agent-Pattern-Labs/sparse-kernel/pull/48","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Agent-Pattern-Labs%2Fsparse-kernel/issues/48","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/48/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-07-01T23:52:49.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4790053225","node_id":"PR_kwDOSKKHCc7s5zZn","number":55,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T23:44:22.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-01T23:52:49.000Z","updated_at":"2026-07-03T23:44:23.000Z","time_to_close":172293,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":21,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 14 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\u003c/li\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/karaabd23-crypto/openclaw/pull/55","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/karaabd23-crypto%2Fopenclaw/issues/55","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/55/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-07-01T23:15:20.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4789887593","node_id":"PR_kwDORZbEys7s5SE1","number":23,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T23:05:15.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-01T23:15:20.000Z","updated_at":"2026-07-03T23:05:17.000Z","time_to_close":172195,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":21,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 21 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.6.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.6.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved Configuration Cache hit rates\u003c/li\u003e\n\u003cli\u003eAdditional CLI rendering options\u003c/li\u003e\n\u003cli\u003eImportant project hierarchy lookup deprecations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.6.1/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/Ahar28\"\u003eAharnish Solanki\u003c/a\u003e,\n\u003ca href=\"https://github.com/benediktjohannes\"\u003eBenedikt Johannes\u003c/a\u003e,\n\u003ca href=\"https://github.com/devareddy05\"\u003eDevendra Reddy Pennabadi\u003c/a\u003e,\n\u003ca href=\"https://github.com/smplio\"\u003eDmytro Rodionov\u003c/a\u003e,\n\u003ca href=\"https://github.com/Dreeam-qwq\"\u003eDreeam\u003c/a\u003e,\n\u003ca href=\"https://github.com/EliasHdzR\"\u003eElías Hernández Rodríguez\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/FinlayRJW\"\u003eFinlayRJW\u003c/a\u003e,\n\u003ca href=\"https://github.com/kamalkansal27\"\u003eKamal Kansal\u003c/a\u003e,\n\u003ca href=\"https://github.com/Marcono1234\"\u003eMarcono1234\u003c/a\u003e,\n\u003ca href=\"https://github.com/runningcode\"\u003eNelson Osacky\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/rkdfx\"\u003eRavi\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/rschmitt\"\u003eRyan Schmitt\u003c/a\u003e,\n\u003ca href=\"https://github.com/sschuberth\"\u003eSebastian Schuberth\u003c/a\u003e,\n\u003ca href=\"https://github.com/seung-hun-h\"\u003eseunghun.ham\u003c/a\u003e,\n\u003ca href=\"https://github.com/sk-reddy17\"\u003esk-reddy17\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/VedantMadane\"\u003eVedant Madane\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.6.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew :wrapper --gradle-version=9.6.1 \u0026amp;\u0026amp; ./gradlew :wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.6.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/309d128bd9fe8c0b71311878fc660b9cbaa07c51\"\u003e\u003ccode\u003e309d128\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38328\"\u003e#38328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/040a978e74ceefbd408bd832fca23e1462fb34b7\"\u003e\u003ccode\u003e040a978\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e0b8325523e3ae1e93fe81da595a1fb1b66a6cce\"\u003e\u003ccode\u003ee0b8325\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38\"\u003e#38\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/946f3e637ce0d8042a22a8096b9837a69607382e\"\u003e\u003ccode\u003e946f3e6\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38300\"\u003e#38300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/65f82246193da1bd8c7a087712c3c376aab1dd82\"\u003e\u003ccode\u003e65f8224\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e346a5ec9d5bbdb5a2478118651d22c19b121f39\"\u003e\u003ccode\u003ee346a5e\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38301\"\u003e#38301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9b53be9a1271e12ac5186f7148c5a15b85f1f1d6\"\u003e\u003ccode\u003e9b53be9\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0dd3b53bec1c03db4bb20b7cb401c948123c5db4\"\u003e\u003ccode\u003e0dd3b53\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/48e5ac210190a0e3a33083404eea77e4dbdf8918\"\u003e\u003ccode\u003e48e5ac2\u003c/code\u003e\u003c/a\u003e Add reproducers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/25598fd75cffa8034af51d399e2b4bf03ba4c7ab\"\u003e\u003ccode\u003e25598fd\u003c/code\u003e\u003c/a\u003e Prepare 9.6.1 patch release (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38293\"\u003e#38293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-task-list-items's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-...\n\n_Description has been truncated_","html_url":"https://github.com/kakahu2015/openclaw/pull/23","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kakahu2015%2Fopenclaw/issues/23","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/23/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-07-01T22:43:38.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4789735904","node_id":"PR_kwDOR68kG87s4zfP","number":33,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 26 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T22:34:39.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-01T22:43:38.000Z","updated_at":"2026-07-03T22:34:40.000Z","time_to_close":172261,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":26,"packages":[{"name":"com.android.application","old_version":"9.0.1","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.0.1","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.2.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 19 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.0.1` | `9.2.1` |\n| com.android.test | `9.0.1` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.1` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.2.1` | `9.6.1` |\n\n\nUpdates `com.android.application` from 9.0.1 to 9.2.1\n\nUpdates `com.android.test` from 9.0.1 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew config...\n\n_Description has been truncated_","html_url":"https://github.com/yanghongqin/AI-Virtual-Company/pull/33","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yanghongqin%2FAI-Virtual-Company/issues/33","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/33/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-07-01T20:04:03.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4788829396","node_id":"PR_kwDOST9Fm87s14Ba","number":48,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-03T19:54:41.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-01T20:04:03.000Z","updated_at":"2026-07-03T19:54:43.000Z","time_to_close":172238,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":21,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 21 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.6.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.6.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved Configuration Cache hit rates\u003c/li\u003e\n\u003cli\u003eAdditional CLI rendering options\u003c/li\u003e\n\u003cli\u003eImportant project hierarchy lookup deprecations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.6.1/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/Ahar28\"\u003eAharnish Solanki\u003c/a\u003e,\n\u003ca href=\"https://github.com/benediktjohannes\"\u003eBenedikt Johannes\u003c/a\u003e,\n\u003ca href=\"https://github.com/devareddy05\"\u003eDevendra Reddy Pennabadi\u003c/a\u003e,\n\u003ca href=\"https://github.com/smplio\"\u003eDmytro Rodionov\u003c/a\u003e,\n\u003ca href=\"https://github.com/Dreeam-qwq\"\u003eDreeam\u003c/a\u003e,\n\u003ca href=\"https://github.com/EliasHdzR\"\u003eElías Hernández Rodríguez\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/FinlayRJW\"\u003eFinlayRJW\u003c/a\u003e,\n\u003ca href=\"https://github.com/kamalkansal27\"\u003eKamal Kansal\u003c/a\u003e,\n\u003ca href=\"https://github.com/Marcono1234\"\u003eMarcono1234\u003c/a\u003e,\n\u003ca href=\"https://github.com/runningcode\"\u003eNelson Osacky\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/rkdfx\"\u003eRavi\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/rschmitt\"\u003eRyan Schmitt\u003c/a\u003e,\n\u003ca href=\"https://github.com/sschuberth\"\u003eSebastian Schuberth\u003c/a\u003e,\n\u003ca href=\"https://github.com/seung-hun-h\"\u003eseunghun.ham\u003c/a\u003e,\n\u003ca href=\"https://github.com/sk-reddy17\"\u003esk-reddy17\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/VedantMadane\"\u003eVedant Madane\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.6.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew :wrapper --gradle-version=9.6.1 \u0026amp;\u0026amp; ./gradlew :wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.6.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/309d128bd9fe8c0b71311878fc660b9cbaa07c51\"\u003e\u003ccode\u003e309d128\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38328\"\u003e#38328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/040a978e74ceefbd408bd832fca23e1462fb34b7\"\u003e\u003ccode\u003e040a978\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e0b8325523e3ae1e93fe81da595a1fb1b66a6cce\"\u003e\u003ccode\u003ee0b8325\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38\"\u003e#38\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/946f3e637ce0d8042a22a8096b9837a69607382e\"\u003e\u003ccode\u003e946f3e6\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38300\"\u003e#38300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/65f82246193da1bd8c7a087712c3c376aab1dd82\"\u003e\u003ccode\u003e65f8224\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e346a5ec9d5bbdb5a2478118651d22c19b121f39\"\u003e\u003ccode\u003ee346a5e\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38301\"\u003e#38301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9b53be9a1271e12ac5186f7148c5a15b85f1f1d6\"\u003e\u003ccode\u003e9b53be9\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0dd3b53bec1c03db4bb20b7cb401c948123c5db4\"\u003e\u003ccode\u003e0dd3b53\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/48e5ac210190a0e3a33083404eea77e4dbdf8918\"\u003e\u003ccode\u003e48e5ac2\u003c/code\u003e\u003c/a\u003e Add reproducers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/25598fd75cffa8034af51d399e2b4bf03ba4c7ab\"\u003e\u003ccode\u003e25598fd\u003c/code\u003e\u003c/a\u003e Prepare 9.6.1 patch release (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38293\"\u003e#38293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-task-list-items's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-...\n\n_Description has been truncated_","html_url":"https://github.com/VasilyAssistant/openclaw/pull/48","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/VasilyAssistant%2Fopenclaw/issues/48","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/48/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-23T03:29:39.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4722361509","node_id":"PR_kwDOTCWVXc7pdvXL","number":2,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 22 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-01T21:29:37.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-23T03:29:39.000Z","updated_at":"2026-07-01T21:29:46.000Z","time_to_close":755998,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":22,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.1","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.compose:compose-bom","old_version":"2026.04.01","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.1","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 22 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.1` |\n| androidx.compose:compose-bom | `2026.04.01` | `2026.06.00` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.1` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.6.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.6.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved Configuration Cache hit rates\u003c/li\u003e\n\u003cli\u003eAdditional CLI rendering options\u003c/li\u003e\n\u003cli\u003eImportant project hierarchy lookup deprecations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.6.1/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/Ahar28\"\u003eAharnish Solanki\u003c/a\u003e,\n\u003ca href=\"https://github.com/benediktjohannes\"\u003eBenedikt Johannes\u003c/a\u003e,\n\u003ca href=\"https://github.com/devareddy05\"\u003eDevendra Reddy Pennabadi\u003c/a\u003e,\n\u003ca href=\"https://github.com/smplio\"\u003eDmytro Rodionov\u003c/a\u003e,\n\u003ca href=\"https://github.com/Dreeam-qwq\"\u003eDreeam\u003c/a\u003e,\n\u003ca href=\"https://github.com/EliasHdzR\"\u003eElías Hernández Rodríguez\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/FinlayRJW\"\u003eFinlayRJW\u003c/a\u003e,\n\u003ca href=\"https://github.com/kamalkansal27\"\u003eKamal Kansal\u003c/a\u003e,\n\u003ca href=\"https://github.com/Marcono1234\"\u003eMarcono1234\u003c/a\u003e,\n\u003ca href=\"https://github.com/runningcode\"\u003eNelson Osacky\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/rkdfx\"\u003eRavi\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/rschmitt\"\u003eRyan Schmitt\u003c/a\u003e,\n\u003ca href=\"https://github.com/sschuberth\"\u003eSebastian Schuberth\u003c/a\u003e,\n\u003ca href=\"https://github.com/seung-hun-h\"\u003eseunghun.ham\u003c/a\u003e,\n\u003ca href=\"https://github.com/sk-reddy17\"\u003esk-reddy17\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/VedantMadane\"\u003eVedant Madane\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.6.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew :wrapper --gradle-version=9.6.1 \u0026amp;\u0026amp; ./gradlew :wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.6.1/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.6.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/309d128bd9fe8c0b71311878fc660b9cbaa07c51\"\u003e\u003ccode\u003e309d128\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38328\"\u003e#38328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/040a978e74ceefbd408bd832fca23e1462fb34b7\"\u003e\u003ccode\u003e040a978\u003c/code\u003e\u003c/a\u003e Update fixed issues in release notes for 9.6.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e0b8325523e3ae1e93fe81da595a1fb1b66a6cce\"\u003e\u003ccode\u003ee0b8325\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38\"\u003e#38\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/946f3e637ce0d8042a22a8096b9837a69607382e\"\u003e\u003ccode\u003e946f3e6\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38300\"\u003e#38300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/65f82246193da1bd8c7a087712c3c376aab1dd82\"\u003e\u003ccode\u003e65f8224\u003c/code\u003e\u003c/a\u003e Restore --non-interactive flag instead of --interactive/--no-interactive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e346a5ec9d5bbdb5a2478118651d22c19b121f39\"\u003e\u003ccode\u003ee346a5e\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38301\"\u003e#38301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9b53be9a1271e12ac5186f7148c5a15b85f1f1d6\"\u003e\u003ccode\u003e9b53be9\u003c/code\u003e\u003c/a\u003e Adjust CLI flag to configure non-interactive console\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0dd3b53bec1c03db4bb20b7cb401c948123c5db4\"\u003e\u003ccode\u003e0dd3b53\u003c/code\u003e\u003c/a\u003e Limit explicit temp file permission setting to intended use case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/48e5ac210190a0e3a33083404eea77e4dbdf8918\"\u003e\u003ccode\u003e48e5ac2\u003c/code\u003e\u003c/a\u003e Add reproducers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/25598fd75cffa8034af51d399e2b4bf03ba4c7ab\"\u003e\u003ccode\u003e25598fd\u003c/code\u003e\u003c/a\u003e Prepare 9.6.1 patch release (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38293\"\u003e#38293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.04.01 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-task-list-items's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for al...\n\n_Description has been truncated_","html_url":"https://github.com/stevewow/openclaw/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevewow%2Fopenclaw/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-23T03:11:20.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4722274247","node_id":"PR_kwDOSxJzv87pddJk","number":16,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 22 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-02T03:06:25.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-23T03:11:20.000Z","updated_at":"2026-07-02T03:06:27.000Z","time_to_close":777305,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":22,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.0","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.compose:compose-bom","old_version":"2026.04.01","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 22 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.0` |\n| androidx.compose:compose-bom | `2026.04.01` | `2026.06.00` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.6.0\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.6.0.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved Configuration Cache hit rates\u003c/li\u003e\n\u003cli\u003eAdditional CLI rendering options\u003c/li\u003e\n\u003cli\u003eImportant project hierarchy lookup deprecations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.6.0/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/Ahar28\"\u003eAharnish Solanki\u003c/a\u003e,\n\u003ca href=\"https://github.com/benediktjohannes\"\u003eBenedikt Johannes\u003c/a\u003e,\n\u003ca href=\"https://github.com/devareddy05\"\u003eDevendra Reddy Pennabadi\u003c/a\u003e,\n\u003ca href=\"https://github.com/smplio\"\u003eDmytro Rodionov\u003c/a\u003e,\n\u003ca href=\"https://github.com/Dreeam-qwq\"\u003eDreeam\u003c/a\u003e,\n\u003ca href=\"https://github.com/EliasHdzR\"\u003eElías Hernández Rodríguez\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/FinlayRJW\"\u003eFinlayRJW\u003c/a\u003e,\n\u003ca href=\"https://github.com/kamalkansal27\"\u003eKamal Kansal\u003c/a\u003e,\n\u003ca href=\"https://github.com/Marcono1234\"\u003eMarcono1234\u003c/a\u003e,\n\u003ca href=\"https://github.com/runningcode\"\u003eNelson Osacky\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/rkdfx\"\u003eRavi\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/rschmitt\"\u003eRyan Schmitt\u003c/a\u003e,\n\u003ca href=\"https://github.com/sschuberth\"\u003eSebastian Schuberth\u003c/a\u003e,\n\u003ca href=\"https://github.com/seung-hun-h\"\u003eseunghun.ham\u003c/a\u003e,\n\u003ca href=\"https://github.com/sk-reddy17\"\u003esk-reddy17\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/VedantMadane\"\u003eVedant Madane\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.6.0 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew :wrapper --gradle-version=9.6.0 \u0026amp;\u0026amp; ./gradlew :wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.6.0/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.6.0/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.6.0 RC3\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/3f750f03d77e42327c5f9fcb9992110088330a32\"\u003e\u003ccode\u003e3f750f0\u003c/code\u003e\u003c/a\u003e Update distro size for Gradle 9.6.0 release (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38243\"\u003e#38243\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/ae93cfa823470de24b8fd96ea04334f6affa1d96\"\u003e\u003ccode\u003eae93cfa\u003c/code\u003e\u003c/a\u003e update distro size\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7e22b56a4f32c1b6d2e532a00ebe0e5a3394f4b\"\u003e\u003ccode\u003ef7e22b5\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-3 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38227\"\u003e#38227\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/71a8eb9b7d7f41a90f82fd026fbc206c095c0e7f\"\u003e\u003ccode\u003e71a8eb9\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/70a87451716eb6d7d568ea00ad1824a4de70ab05\"\u003e\u003ccode\u003e70a8745\u003c/code\u003e\u003c/a\u003e Prepare release notes for Gradle 9.6.0RC3 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38220\"\u003e#38220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/970652223811ce4912808dedef77844f1a47bd95\"\u003e\u003ccode\u003e9706522\u003c/code\u003e\u003c/a\u003e some final polishing for release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/af308ebf8d9d3d8ba75314f6a114150734409584\"\u003e\u003ccode\u003eaf308eb\u003c/code\u003e\u003c/a\u003e Restore GradleInternal.getRootProject overload for binary compatibility (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38214\"\u003e#38214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/239361b0fb2351051782497389ff202816d8c65a\"\u003e\u003ccode\u003e239361b\u003c/code\u003e\u003c/a\u003e Restore GradleInternal.getRootProject overload for binary compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/896dc44a40e2008428f9fbb29faa92d6b7b8cac0\"\u003e\u003ccode\u003e896dc44\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-2 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38187\"\u003e#38187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/2d4ec2521c8cbcaf50258cdab827756924f82b23\"\u003e\u003ccode\u003e2d4ec25\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.04.01 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-task-list-items's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/duchi0236/longclaw/pull/16","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/duchi0236%2Flongclaw/issues/16","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/16/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-23T02:29:16.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4722099767","node_id":"PR_kwDOSeqYCM7pc5HT","number":30,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 22 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-02T02:24:53.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-23T02:29:16.000Z","updated_at":"2026-07-02T02:24:55.000Z","time_to_close":777337,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":22,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.6.0","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.compose:compose-bom","old_version":"2026.04.01","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"org.commonmark:commonmark","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-autolink","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-strikethrough","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-gfm-tables","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"org.commonmark:commonmark-ext-task-list-items","old_version":"0.28.0","new_version":"0.29.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 22 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.6.0` |\n| androidx.compose:compose-bom | `2026.04.01` | `2026.06.00` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-autolink](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-strikethrough](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-gfm-tables](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [org.commonmark:commonmark-ext-task-list-items](https://github.com/commonmark/commonmark-java) | `0.28.0` | `0.29.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.1` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.6.0\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.6.0.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved Configuration Cache hit rates\u003c/li\u003e\n\u003cli\u003eAdditional CLI rendering options\u003c/li\u003e\n\u003cli\u003eImportant project hierarchy lookup deprecations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.6.0/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/Ahar28\"\u003eAharnish Solanki\u003c/a\u003e,\n\u003ca href=\"https://github.com/benediktjohannes\"\u003eBenedikt Johannes\u003c/a\u003e,\n\u003ca href=\"https://github.com/devareddy05\"\u003eDevendra Reddy Pennabadi\u003c/a\u003e,\n\u003ca href=\"https://github.com/smplio\"\u003eDmytro Rodionov\u003c/a\u003e,\n\u003ca href=\"https://github.com/Dreeam-qwq\"\u003eDreeam\u003c/a\u003e,\n\u003ca href=\"https://github.com/EliasHdzR\"\u003eElías Hernández Rodríguez\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/FinlayRJW\"\u003eFinlayRJW\u003c/a\u003e,\n\u003ca href=\"https://github.com/kamalkansal27\"\u003eKamal Kansal\u003c/a\u003e,\n\u003ca href=\"https://github.com/Marcono1234\"\u003eMarcono1234\u003c/a\u003e,\n\u003ca href=\"https://github.com/runningcode\"\u003eNelson Osacky\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/rkdfx\"\u003eRavi\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/rschmitt\"\u003eRyan Schmitt\u003c/a\u003e,\n\u003ca href=\"https://github.com/sschuberth\"\u003eSebastian Schuberth\u003c/a\u003e,\n\u003ca href=\"https://github.com/seung-hun-h\"\u003eseunghun.ham\u003c/a\u003e,\n\u003ca href=\"https://github.com/sk-reddy17\"\u003esk-reddy17\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/VedantMadane\"\u003eVedant Madane\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.6.0 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew :wrapper --gradle-version=9.6.0 \u0026amp;\u0026amp; ./gradlew :wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.6.0/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.6.0/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.6.0 RC3\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/3f750f03d77e42327c5f9fcb9992110088330a32\"\u003e\u003ccode\u003e3f750f0\u003c/code\u003e\u003c/a\u003e Update distro size for Gradle 9.6.0 release (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38243\"\u003e#38243\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/ae93cfa823470de24b8fd96ea04334f6affa1d96\"\u003e\u003ccode\u003eae93cfa\u003c/code\u003e\u003c/a\u003e update distro size\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7e22b56a4f32c1b6d2e532a00ebe0e5a3394f4b\"\u003e\u003ccode\u003ef7e22b5\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-3 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38227\"\u003e#38227\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/71a8eb9b7d7f41a90f82fd026fbc206c095c0e7f\"\u003e\u003ccode\u003e71a8eb9\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/70a87451716eb6d7d568ea00ad1824a4de70ab05\"\u003e\u003ccode\u003e70a8745\u003c/code\u003e\u003c/a\u003e Prepare release notes for Gradle 9.6.0RC3 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38220\"\u003e#38220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/970652223811ce4912808dedef77844f1a47bd95\"\u003e\u003ccode\u003e9706522\u003c/code\u003e\u003c/a\u003e some final polishing for release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/af308ebf8d9d3d8ba75314f6a114150734409584\"\u003e\u003ccode\u003eaf308eb\u003c/code\u003e\u003c/a\u003e Restore GradleInternal.getRootProject overload for binary compatibility (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38214\"\u003e#38214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/239361b0fb2351051782497389ff202816d8c65a\"\u003e\u003ccode\u003e239361b\u003c/code\u003e\u003c/a\u003e Restore GradleInternal.getRootProject overload for binary compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/896dc44a40e2008428f9fbb29faa92d6b7b8cac0\"\u003e\u003ccode\u003e896dc44\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-2 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/38187\"\u003e#38187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/2d4ec2521c8cbcaf50258cdab827756924f82b23\"\u003e\u003ccode\u003e2d4ec25\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.6.0-rc-2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.04.01 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `org.commonmark:commonmark` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-task-list-items's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-autolink` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-autolink's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-autolink's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-strikethrough` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-strikethrough's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-gfm-tables` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-gfm-tables's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/HEAD/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\r\n        .setAllowedTypes(Map.ofEntries(\r\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\r\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\r\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\r\n        ))\r\n        .build();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/CHANGELOG.md\"\u003eorg.commonmark:commonmark-ext-gfm-tables's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.29.0] - 2026-06-20\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003eAttributeProvider\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow authors to provide custom\ntitles per alert. See the\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#custom-alert-titles\"\u003ecustom titles section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow alerts to be nested within\nother blocks (including other alerts). See\n\u003ca href=\"https://github.com/commonmark/commonmark-java/blob/main/commonmark-ext-gfm-alerts/README.md#nesting-alerts\"\u003ethis section of the alerts README\u003c/a\u003e\nfor more information. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew configuration for \u003ccode\u003eAlertsExtension\u003c/code\u003e to allow the set of alert types\n(including standard GFM types) to be completely overwritten. (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e)\n\u003cpre lang=\"java\"\u003e\u003ccode\u003evar extension = AlertsExtension.builder()\n        .setAllowedTypes(Map.ofEntries(\n                Map.entry(\u0026quot;IMPORTANT\u0026quot;, \u0026quot;Important\u0026quot;),\n                Map.entry(\u0026quot;WARNING\u0026quot;, \u0026quot;Warning\u0026quot;)\n                Map.entry(\u0026quot;BUG\u0026quot;, \u0026quot;Known Bug\u0026quot;)\n        ))\n        .build();\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eSupport rendering alerts to text (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e)\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/commonmark/commonmark-java/commit/57cf9fde68ae40efc3943557caccd3628bccc3cf\"\u003e\u003ccode\u003e57cf9fd\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release commonmark-parent-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/4f6b66e11e03fd90349251c64feff7633d0b84d1\"\u003e\u003ccode\u003e4f6b66e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/438\"\u003e#438\u003c/a\u003e from commonmark/release-0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b0f4dbc849c8b0b75ad4d6770e8ba212b9229335\"\u003e\u003ccode\u003eb0f4dbc\u003c/code\u003e\u003c/a\u003e mvn versions:set -DnewVersion=0.29.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/c5f6bc9f761e5d8ed8c0cec484efc4dc0541dd07\"\u003e\u003ccode\u003ec5f6bc9\u003c/code\u003e\u003c/a\u003e Prepare CHANGELOG for version 0.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/952ce9df551558958b73c22907892bc49d8a3fab\"\u003e\u003ccode\u003e952ce9d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/437\"\u003e#437\u003c/a\u003e from rdestefa/issue-436-alerts-text-rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/efc90bd89d5d85f17be26a23499fa07071f2e8d2\"\u003e\u003ccode\u003eefc90bd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/0117b82cbd30106e3af90802ec8bbca5aabc76ec\"\u003e\u003ccode\u003e0117b82\u003c/code\u003e\u003c/a\u003e Update AlertHtmlNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/ffa682edf0a49ac4e87d9da95c94b033ead5b4e9\"\u003e\u003ccode\u003effa682e\u003c/code\u003e\u003c/a\u003e Update AlertTextContentNodeRenderer.java\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/717dedd60df646894518540102d88486371a87f3\"\u003e\u003ccode\u003e717dedd\u003c/code\u003e\u003c/a\u003e Add Text Content Rendering Support for Alerts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/commonmark/commonmark-java/commit/b146e551d898d43384adaaaa1cf7de980624b574\"\u003e\u003ccode\u003eb146e55\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/435\"\u003e#435\u003c/a\u003e from rdestefa/issue-431-disallow-github-alert-types\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/commonmark/commonmark-java/compare/commonmark-parent-0.28.0...commonmark-parent-0.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark-ext-task-list-items` from 0.28.0 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/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark-ext-task-list-items's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.29.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport rendering GFM task list items to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport rendering YAML front matter to Markdown (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlerts\n\u003cul\u003e\n\u003cli\u003eAllow customizing HTML attributes for alert title \u003ccode\u003e\u0026lt;p\u0026gt;\u003c/code\u003e tag via \u003ccode\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/ianhylee/crawlbot/pull/30","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianhylee%2Fcrawlbot/issues/30","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/30/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-22T05:28:28.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4713726916","node_id":"PR_kwDOR-Mw3M7pBG3i","number":28,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-02T05:24:25.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-22T05:28:28.000Z","updated_at":"2026-07-02T05:24:26.000Z","time_to_close":863757,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.6.0","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.6.0` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/juanih/openclaw-custom/pull/28","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanih%2Fopenclaw-custom/issues/28","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/28/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-22T01:18:33.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4712637118","node_id":"PR_kwDOSHbM8M7o9lqd","number":27,"state":"closed","title":"chore(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-02T01:14:26.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-22T01:18:33.000Z","updated_at":"2026-07-02T01:14:28.000Z","time_to_close":863753,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.6.0","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.6.0` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/Mingjie-G/NL2UI-with-OpenClaw/pull/27","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mingjie-G%2FNL2UI-with-OpenClaw/issues/27","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/27/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-22T00:48:28.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4712545527","node_id":"PR_kwDOR-q5fM7o9TDI","number":29,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-02T00:44:23.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-22T00:48:28.000Z","updated_at":"2026-07-02T00:44:25.000Z","time_to_close":863755,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.1","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.6.0","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.1` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.6.0` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/pertain99/openclaw-better/pull/29","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/pertain99%2Fopenclaw-better/issues/29","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/29/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-19T23:57:45.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4704247175","node_id":"PR_kwDOR5upC87ojbOx","number":34,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-01T23:58:15.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-19T23:57:45.000Z","updated_at":"2026-07-01T23:58:16.000Z","time_to_close":1036830,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.0` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.5.1` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/lohchyi/openclaw/pull/34","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/lohchyi%2Fopenclaw/issues/34","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/34/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-19T21:47:08.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4703737877","node_id":"PR_kwDOR_DPZc7ohvIO","number":30,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-01T21:48:44.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-19T21:47:08.000Z","updated_at":"2026-07-01T21:48:45.000Z","time_to_close":1036896,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.1.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.1.0","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.1.0` | `9.2.1` |\n| com.android.test | `9.1.0` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.0` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.5.1` |\n\n\nUpdates `com.android.application` from 9.1.0 to 9.2.1\n\nUpdates `com.android.test` from 9.1.0 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/maslovmaksim92/openclaw/pull/30","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/maslovmaksim92%2Fopenclaw/issues/30","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/30/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-19T17:17:36.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4702457505","node_id":"PR_kwDOR6o7c87odlA_","number":45,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-07-01T17:19:15.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-19T17:17:36.000Z","updated_at":"2026-07-01T17:19:17.000Z","time_to_close":1036899,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":27,"packages":[{"name":"com.android.application","old_version":"9.0.1","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.0.1","new_version":"9.2.1"},{"name":"org.jlleitschuh.gradle.ktlint","old_version":"14.0.1","new_version":"14.2.0"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.2.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.compose:compose-bom","old_version":"2026.02.00","new_version":"2026.06.00"},{"name":"androidx.core:core-ktx","old_version":"1.17.0","new_version":"1.19.0"},{"name":"androidx.lifecycle:lifecycle-runtime-ktx","old_version":"2.10.0","new_version":"2.11.0"},{"name":"androidx.activity:activity-compose","old_version":"1.12.2","new_version":"1.13.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.commonmark:commonmark","old_version":"0.27.1","new_version":"0.28.0","repository_url":"https://github.com/commonmark/commonmark-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.3","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.2","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"androidx.test.ext:junit","old_version":"1.2.1","new_version":"1.3.0"},{"name":"gradle-wrapper","old_version":"9.2.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 20 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.0.1` | `9.2.1` |\n| com.android.test | `9.0.1` | `9.2.1` |\n| org.jlleitschuh.gradle.ktlint | `14.0.1` | `14.2.0` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.2.21` | `2.4.0` |\n| androidx.compose:compose-bom | `2026.02.00` | `2026.06.00` |\n| androidx.core:core-ktx | `1.17.0` | `1.19.0` |\n| androidx.lifecycle:lifecycle-runtime-ktx | `2.10.0` | `2.11.0` |\n| androidx.activity:activity-compose | `1.12.2` | `1.13.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [org.commonmark:commonmark](https://github.com/commonmark/commonmark-java) | `0.27.1` | `0.28.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.3` | `6.2.0` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.2` | `6.1.0` |\n| androidx.test.ext:junit | `1.2.1` | `1.3.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.2.1` | `9.5.1` |\n\n\nUpdates `com.android.application` from 9.0.1 to 9.2.1\n\nUpdates `com.android.test` from 9.0.1 to 9.2.1\n\nUpdates `org.jlleitschuh.gradle.ktlint` from 14.0.1 to 14.2.0\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.2.21 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.2.21...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.compose:compose-bom` from 2026.02.00 to 2026.06.00\n\nUpdates `androidx.core:core-ktx` from 1.17.0 to 1.19.0\n\nUpdates `androidx.lifecycle:lifecycle-runtime-ktx` from 2.10.0 to 2.11.0\n\nUpdates `androidx.activity:activity-compose` from 1.12.2 to 1.13.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.commonmark:commonmark` from 0.27.1 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/commonmark/commonmark-java/releases\"\u003eorg.commonmark:commonmark's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecommonmark-java 0.28.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNew extension for alerts (aka callouts/admonitions)\n\u003cul\u003e\n\u003cli\u003eSyntax:\n\u003cpre\u003e\u003ccode\u003e\u0026gt; [!NOTE]\r\n\u0026gt; The text of the note.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003eAs types you can use NOTE, TIP, IMPORTANT, WARNING, CAUTION; or configure the\nextension to add additional ones.\u003c/li\u003e\n\u003cli\u003eUse class \u003ccode\u003eAlertsExtension\u003c/code\u003e in artifact \u003ccode\u003ecommonmark-ext-gfm-alerts\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/commonmark/commonmark-java/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eNew option \u003ccode\u003emaxOpenBlockParsers\u003c/code\u003e for \u003ccode\u003eParser.Builder\u003c/code\u003e to set an overall limit\nfor the depth of block parsing. If set, any nesting beyond the limit will be\nparsed as paragraph text instead. The default remains unlimited.\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\u003eS...\n\n_Description has been truncated_","html_url":"https://github.com/hyoseop1231/openclaw-fork/pull/45","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hyoseop1231%2Fopenclaw-fork/issues/45","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/45/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-18T20:49:14.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4695869480","node_id":"PR_kwDORFx0Zc7oH0lB","number":37,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 15 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-19T20:44:53.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-18T20:49:14.000Z","updated_at":"2026-06-19T20:44:54.000Z","time_to_close":86139,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":15,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 15 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.1` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.0` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.5.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.5.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.5.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTask provenance in reports and failure messages\u003c/li\u003e\n\u003cli\u003eType-safe accessors for precompiled Kotlin Settings plugins\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.5.1/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/atm1020\"\u003eatm1020\u003c/a\u003e,\n\u003ca href=\"https://github.com/mataha\"\u003emataha\u003c/a\u003e,\n\u003ca href=\"https://github.com/aSemy\"\u003eAdam\u003c/a\u003e,\n\u003ca href=\"https://github.com/kelemen\"\u003eAttila Kelemen\u003c/a\u003e,\n\u003ca href=\"https://github.com/britter\"\u003eBenedikt Ritter\u003c/a\u003e,\n\u003ca href=\"https://github.com/Vampire\"\u003eBjörn Kautler\u003c/a\u003e,\n\u003ca href=\"https://github.com/budindepunk\"\u003eCaro Silva Rode\u003c/a\u003e,\n\u003ca href=\"https://github.com/chanani\"\u003eCHANHAN\u003c/a\u003e,\n\u003ca href=\"https://github.com/DmitryNez\"\u003eDmitry Nezavitin\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/KugelLibelle\"\u003eKugelLibelle\u003c/a\u003e,\n\u003ca href=\"https://github.com/vmadalin\"\u003eMadalin Valceleanu\u003c/a\u003e,\n\u003ca href=\"https://github.com/quijote\"\u003eMarkus Gaisbauer\u003c/a\u003e,\n\u003ca href=\"https://github.com/koppor\"\u003eOliver Kopp\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/ploober\"\u003eploober\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/R0h1tAnand\"\u003eRohit Anand\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/usv240\"\u003eUjwal Suresh Vanjare\u003c/a\u003e,\n\u003ca href=\"https://github.com/urdak\"\u003eVictor Merkulov\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.5.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.5.1 \u0026amp;\u0026amp; ./gradlew wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.5.1/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.5.1/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.5.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/fd78213f09782e62ca4957f9cfd3d90c6c3f1767\"\u003e\u003ccode\u003efd78213\u003c/code\u003e\u003c/a\u003e Update Documentation Infrastructure: Fix scrolling issue in user manual (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37861\"\u003e#37861\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/7758437128d1c52702786ad719a13ade1b860aa8\"\u003e\u003ccode\u003e7758437\u003c/code\u003e\u003c/a\u003e fix scroll\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/2fd605fdcd69fea10570e9eb1343bbd7ca01c9d0\"\u003e\u003ccode\u003e2fd605f\u003c/code\u003e\u003c/a\u003e Only try to run as worker thread in DefaultBuildOperationQueue (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37845\"\u003e#37845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/af6984901238402386ae263d746380504e5f9138\"\u003e\u003ccode\u003eaf69849\u003c/code\u003e\u003c/a\u003e Release notes for Gradle 9.5.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37853\"\u003e#37853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f4d9d03e9bb47d2d17b6d8314fdaa32c3d0b3c1e\"\u003e\u003ccode\u003ef4d9d03\u003c/code\u003e\u003c/a\u003e Release notes for Gradle 9.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/01eda3adf40dbe97e81475e813705409dcfe1091\"\u003e\u003ccode\u003e01eda3a\u003c/code\u003e\u003c/a\u003e Address review feedback on worker-lease retry changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/7024e15139b2db9df831dd15a8b9e9052acd9a51\"\u003e\u003ccode\u003e7024e15\u003c/code\u003e\u003c/a\u003e Revert enrich file visitor with size info on \u003ccode\u003erelease\u003c/code\u003e branch (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37848\"\u003e#37848\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/d51476fda21330c037a04b43ec9a93a929d05b87\"\u003e\u003ccode\u003ed51476f\u003c/code\u003e\u003c/a\u003e Fix tryRunAsWorkerThread null-return test to match contract\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/090ebabc5b6f648e01c0269a321d80372fdbfe0f\"\u003e\u003ccode\u003e090ebab\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Add getLength() to FilePropertyVisitor.VisitState\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/bceab24677298144860f6919bdcb031e806dbf23\"\u003e\u003ccode\u003ebceab24\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix annotation\u0026quot;\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.5.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `dnsjava:dnsjava` from 3.6.4 to 3.6.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dnsjava/dnsjava/releases\"\u003ednsjava:dnsjava's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHandle canceled keys in UDP client (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle interrupts on NIO selector thread (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/396\"\u003e#396\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/397\"\u003e#397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix config option key names in README (\u003ca href=\"https://github.com/lostnet\"\u003e\u003ccode\u003e@​lostnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/399\"\u003e#399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle invalid/uninitialized file times in hosts file (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/400\"\u003e#400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003egetXxxAsByteArray()\u003c/code\u003e getters and overload with escape boolean (\u003ca href=\"https://github.com/MMauro94\"\u003e\u003ccode\u003e@​MMauro94\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/404\"\u003e#404\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/405\"\u003e#405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eNote\u003c/strong\u003e: The tag for this release is \u003ccode\u003ev3.6.5-1\u003c/code\u003e, because the v3.6.5 tag accidentally pointed to a local branch and cannot be changed anymore because of the immutable releases. The Maven artifacts from the \u003ca href=\"https://github.com/dnsjava/dnsjava/actions/runs/26331191483\"\u003eActions run\u003c/a\u003e are correct.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-1\"\u003ehttps://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-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/dnsjava/dnsjava/blob/master/Changelog\"\u003ednsjava:dnsjava's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e05/23/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.5 released\u003c/li\u003e\n\u003cli\u003eHandle canceled keys in UDP client (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle interrupts on NIO selector thread (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/396\"\u003e#396\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/397\"\u003e#397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix config option key names in README (\u003ca href=\"https://github.com/lostnet\"\u003e\u003ccode\u003e@​lostnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/399\"\u003e#399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle invalid/uninitialized file times in hosts file (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/400\"\u003e#400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd getXxxAsByteArray() getters and overload with escape boolean\n(\u003ca href=\"https://github.com/MMauro94\"\u003e\u003ccode\u003e@​MMauro94\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/404\"\u003e#404\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/405\"\u003e#405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e01/18/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.4 released\u003c/li\u003e\n\u003cli\u003eFix Zone-class serialization (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid Double DNS Lookup for Names with Labels \u0026gt;= ndots (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/388\"\u003e#388\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent NPE when calling Message#getTSIG() on DNS request with\nbad header (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/384\"\u003e#384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUnwrap an exception in the legacy callback-based async interface (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/383\"\u003e#383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent ConcurrentModificationException in NIO clients\n(\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/379\"\u003e#379\u003c/a\u003e, \u003ca href=\"https://github.com/bhaveshthakker\"\u003e\u003ccode\u003e@​bhaveshthakker\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle \u003ccode\u003enull\u003c/code\u003e in all setSearchPath overloads equally (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce warning level of invalid \u003ccode\u003ehosts\u003c/code\u003e file entries (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove a lock on the hot-path in the \u003ccode\u003ehosts\u003c/code\u003e file parser (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDoH Resolver makes use of the Multi-Release jar and tests are executed\nfor Java 8 and 11+ implementations (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix DoH Resolver initial request delay (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e01/26/2025\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.3 released\u003c/li\u003e\n\u003cli\u003eSupport custom hosts file size (\u003ca href=\"https://github.com/flaming-archer\"\u003e\u003ccode\u003e@​flaming-archer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/349\"\u003e#349\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix origin handling in zone loaded from file or stream (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/346\"\u003e#346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent TCP port leak when closing IO (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix confusing parameter name in CNAMERecord (\u003ca href=\"https://github.com/chkal\"\u003e\u003ccode\u003e@​chkal\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/354\"\u003e#354\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOptionally disable ShutdownHook in NioClient (\u003ca href=\"https://github.com/SvenssonWeb\"\u003e\u003ccode\u003e@​SvenssonWeb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTSIG algorithm names from RFC 8945\u003c/li\u003e\n\u003cli\u003eMessage.toWire can exceed MAXLENGTH (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/355\"\u003e#355\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTCP query might fail if the shared buffer is full (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/357\"\u003e#357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDynamic updates silently truncates records (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix DoH initial request using recommended nanoTime calculation\n(\u003ca href=\"https://github.com/LinZong\"\u003e\u003ccode\u003e@​LinZong\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/345\"\u003e#345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e09/21/2024\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.2 released\u003c/li\u003e\n\u003cli\u003eAdd new IANA Trust Anchor (\u003ca href=\"https://github.com/technolord\"\u003e\u003ccode\u003e@​technolord\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/337\"\u003e#337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix Zone handling with signed SOA (\u003ca href=\"https://github.com/frankarinnet\"\u003e\u003ccode\u003e@​frankarinnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/335\"\u003e#335\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e07/28/2024\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.1 released\u003c/li\u003e\n\u003cli\u003eProperly fix LookupSession doesn't cache CNAMEs (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/316\"\u003e#316\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove JEP-418 SPI to Java 18 to support EOL workflows (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/329\"\u003e#329\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e07/21/2024\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dnsjava/dnsjava/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.vintage:junit-vintage-engine` from 6.0.3 to 6.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junit-team/junit-framework/releases\"\u003eorg.junit.vintage:junit-vintage-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.1.0 = Platform 6.1.0 + Jupiter 6.1.0 + Vintage 6.1.0\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JarvisCraft\"\u003e\u003ccode\u003e@​JarvisCraft\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5633\"\u003ejunit-team/junit-framework#5633\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Maran23\"\u003e\u003ccode\u003e@​Maran23\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5644\"\u003ejunit-team/junit-framework#5644\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.1.0-RC1 = Platform 6.1.0-RC1 + Jupiter 6.1.0-RC1 + Vintage 6.1.0-RC1\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0-RC1/release-notes/\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariokhoury4\"\u003e\u003ccode\u003e@​mariokhoury4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/4574\"\u003ejunit-team/junit-framework#4574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Ogu1208\"\u003e\u003ccode\u003e@​Ogu1208\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5145\"\u003ejunit-team/junit-framework#5145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/HyungGeun94\"\u003e\u003ccode\u003e@​HyungGeun94\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5271\"\u003ejunit-team/junit-framework#5271\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yalishevant\"\u003e\u003ccode\u003e@​yalishevant\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5316\"\u003ejunit-team/junit-framework#5316\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JINU-CHANG\"\u003e\u003ccode\u003e@​JINU-CHANG\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5290\"\u003ejunit-team/junit-framework#5290\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaschdoc\"\u003e\u003ccode\u003e@​jaschdoc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5427\"\u003ejunit-team/junit-framework#5427\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kawshikbuet17\"\u003e\u003ccode\u003e@​kawshikbuet17\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5561\"\u003ejunit-team/junit-framework#5561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/msridhar\"\u003e\u003ccode\u003e@​msridhar\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5602\"\u003ejunit-team/junit-framework#5602\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.1.0-M1...r6.1.0-RC1\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.1.0-M1...r6.1.0-RC1\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.1.0-M1 = Platform 6.1.0-M1 + Jupiter 6.1.0-M1 + Vintage 6.1.0-M1\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0-M1/release-notes/\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vy\"\u003e\u003ccode\u003e@​vy\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5041\"\u003ejunit-team/junit-framework#5041\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Pankraz76\"\u003e\u003ccode\u003e@​Pankraz76\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5006\"\u003ejunit-team/junit-framework#5006\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/arukiidou\"\u003e\u003ccode\u003e@​arukiidou\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5066\"\u003ejunit-team/junit-framework#5066\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laeubi\"\u003e\u003ccode\u003e@​laeubi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5092\"\u003ejunit-team/junit-framework#5092\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jihun4452\"\u003e\u003ccode\u003e@​jihun4452\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5088\"\u003ejunit-team/junit-framework#5088\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TWiStErRob\"\u003e\u003ccode\u003e@​TWiStErRob\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5133\"\u003ejunit-team/junit-framework#5133\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.0...r6.1.0-M1\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.0...r6.1.0-M1\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/junit-team/junit-framework/commit/0dc3af1cb1973d257b5bc75d81e02454d5e4e556\"\u003e\u003ccode\u003e0dc3af1\u003c/code\u003e\u003c/a\u003e Release 6.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/1d130020c85170edcb46ce7ed1f7f78824e37c04\"\u003e\u003ccode\u003e1d13002\u003c/code\u003e\u003c/a\u003e Prepare 6.1.0 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/072b2175bbd7b0b3b26f5d928550ec7a21e68268\"\u003e\u003ccode\u003e072b217\u003c/code\u003e\u003c/a\u003e Update plugin spotless to v8.5.0 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5668\"\u003e#5668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/3a53480218f4b752a9ca77506e10632cd483c0f8\"\u003e\u003ccode\u003e3a53480\u003c/code\u003e\u003c/a\u003e Update Gradle to v9.5.1 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5666\"\u003e#5666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/0e18a20a9f98d063ae02b3ba19329143f5c7f034\"\u003e\u003ccode\u003e0e18a20\u003c/code\u003e\u003c/a\u003e Update zizmorcore/zizmor-action action to v0.5.4 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5669\"\u003e#5669\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/0a2634fb9cbbd057b02cf629d7d272c16d62be4b\"\u003e\u003ccode\u003e0a2634f\u003c/code\u003e\u003c/a\u003e Update github/codeql-action action to v4.35.5 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5671\"\u003e#5671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/4dbd5561b00ac761a62c516bfaec51c212a2d60c\"\u003e\u003ccode\u003e4dbd556\u003c/code\u003e\u003c/a\u003e Restructure workflows to have single \u0026quot;status\u0026quot; job (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5670\"\u003e#5670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/f2194cebe377512cb0ade388c62a881a0bcf5d3e\"\u003e\u003ccode\u003ef2194ce\u003c/code\u003e\u003c/a\u003e Increase timeout to reduce flakiness\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fdd2df65b763151cccbe669ea9e1c3155efcd\"\u003e\u003ccode\u003e5c8fdd2\u003c/code\u003e\u003c/a\u003e Update dependency org.apache.groovy:groovy to v5.0.6 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5659\"\u003e#5659\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/43c6982324602582902c9bdb213fd5e007f9cf3d\"\u003e\u003ccode\u003e43c6982\u003c/code\u003e\u003c/a\u003e Update dependency org.slf4j:slf4j-jdk14 to v2.0.18 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5667\"\u003e#5667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-assertions-core-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-assertions-core-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-runner-junit5-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-runner-junit5-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-runner-junit5-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-runner-junit5-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https:...\n\n_Description has been truncated_","html_url":"https://github.com/saraivabr/openclaw/pull/37","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/saraivabr%2Fopenclaw/issues/37","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/37/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-18T13:19:24.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4692710679","node_id":"PR_kwDORlezzM7n9VHc","number":32,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 15 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-20T10:17:19.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-18T13:19:24.000Z","updated_at":"2026-06-20T10:17:21.000Z","time_to_close":161875,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":15,"packages":[{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"io.kotest:kotest-assertions-core-jvm","old_version":"6.1.11","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.11","new_version":"6.2.0","repository_url":"https://github.com/kotest/kotest"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-test","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"com.squareup.okhttp3:mockwebserver","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"com.android.application","old_version":"9.2.0","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.2.0","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.21","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 15 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.1` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.0` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.11` | `6.2.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [com.squareup.okhttp3:mockwebserver](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| com.android.application | `9.2.0` | `9.2.1` |\n| com.android.test | `9.2.0` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.21` | `2.4.0` |\n\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.5.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gradle/gradle/releases\"\u003egradle-wrapper's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.5.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.5.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTask provenance in reports and failure messages\u003c/li\u003e\n\u003cli\u003eType-safe accessors for precompiled Kotlin Settings plugins\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.5.1/release-notes.html\"\u003eRead the Release Notes\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe would like to thank the following community members for their contributions to this release of Gradle:\n\u003ca href=\"https://github.com/atm1020\"\u003eatm1020\u003c/a\u003e,\n\u003ca href=\"https://github.com/mataha\"\u003emataha\u003c/a\u003e,\n\u003ca href=\"https://github.com/aSemy\"\u003eAdam\u003c/a\u003e,\n\u003ca href=\"https://github.com/kelemen\"\u003eAttila Kelemen\u003c/a\u003e,\n\u003ca href=\"https://github.com/britter\"\u003eBenedikt Ritter\u003c/a\u003e,\n\u003ca href=\"https://github.com/Vampire\"\u003eBjörn Kautler\u003c/a\u003e,\n\u003ca href=\"https://github.com/budindepunk\"\u003eCaro Silva Rode\u003c/a\u003e,\n\u003ca href=\"https://github.com/chanani\"\u003eCHANHAN\u003c/a\u003e,\n\u003ca href=\"https://github.com/DmitryNez\"\u003eDmitry Nezavitin\u003c/a\u003e,\n\u003ca href=\"https://github.com/Juneezee\"\u003eEng Zer Jun\u003c/a\u003e,\n\u003ca href=\"https://github.com/KugelLibelle\"\u003eKugelLibelle\u003c/a\u003e,\n\u003ca href=\"https://github.com/vmadalin\"\u003eMadalin Valceleanu\u003c/a\u003e,\n\u003ca href=\"https://github.com/quijote\"\u003eMarkus Gaisbauer\u003c/a\u003e,\n\u003ca href=\"https://github.com/koppor\"\u003eOliver Kopp\u003c/a\u003e,\n\u003ca href=\"https://github.com/hfhbd\"\u003ePhilip Wedemann\u003c/a\u003e,\n\u003ca href=\"https://github.com/ploober\"\u003eploober\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/R0h1tAnand\"\u003eRohit Anand\u003c/a\u003e,\n\u003ca href=\"https://github.com/Suvrat1629\"\u003eSuvrat Acharya\u003c/a\u003e,\n\u003ca href=\"https://github.com/usv240\"\u003eUjwal Suresh Vanjare\u003c/a\u003e,\n\u003ca href=\"https://github.com/urdak\"\u003eVictor Merkulov\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.5.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.5.1 \u0026amp;\u0026amp; ./gradlew wrapper\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee the Gradle \u003ca href=\"https://docs.gradle.org/9.5.1/userguide/upgrading_version_9.html\"\u003e9.x upgrade guide\u003c/a\u003e to learn about deprecations, breaking changes and other considerations when upgrading.\u003c/p\u003e\n\u003cp\u003eFor Java, Groovy, Kotlin and Android compatibility, see the \u003ca href=\"https://docs.gradle.org/9.5.1/userguide/compatibility.html\"\u003efull compatibility notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eReporting problems\u003c/h2\u003e\n\u003cp\u003eIf you find a problem with this release, please file a bug on \u003ca href=\"https://github.com/gradle/gradle/issues\"\u003eGitHub Issues\u003c/a\u003e adhering to our issue guidelines.\nIf you're not sure you're encountering a bug, please use the \u003ca href=\"https://discuss.gradle.org/c/help-discuss\"\u003eforum\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe hope you will build happiness with Gradle, and we look forward to your feedback via \u003ca href=\"https://twitter.com/gradle\"\u003eTwitter\u003c/a\u003e or on \u003ca href=\"https://github.com/gradle\"\u003eGitHub\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003e9.5.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/fd78213f09782e62ca4957f9cfd3d90c6c3f1767\"\u003e\u003ccode\u003efd78213\u003c/code\u003e\u003c/a\u003e Update Documentation Infrastructure: Fix scrolling issue in user manual (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37861\"\u003e#37861\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/7758437128d1c52702786ad719a13ade1b860aa8\"\u003e\u003ccode\u003e7758437\u003c/code\u003e\u003c/a\u003e fix scroll\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/2fd605fdcd69fea10570e9eb1343bbd7ca01c9d0\"\u003e\u003ccode\u003e2fd605f\u003c/code\u003e\u003c/a\u003e Only try to run as worker thread in DefaultBuildOperationQueue (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37845\"\u003e#37845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/af6984901238402386ae263d746380504e5f9138\"\u003e\u003ccode\u003eaf69849\u003c/code\u003e\u003c/a\u003e Release notes for Gradle 9.5.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37853\"\u003e#37853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f4d9d03e9bb47d2d17b6d8314fdaa32c3d0b3c1e\"\u003e\u003ccode\u003ef4d9d03\u003c/code\u003e\u003c/a\u003e Release notes for Gradle 9.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/01eda3adf40dbe97e81475e813705409dcfe1091\"\u003e\u003ccode\u003e01eda3a\u003c/code\u003e\u003c/a\u003e Address review feedback on worker-lease retry changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/7024e15139b2db9df831dd15a8b9e9052acd9a51\"\u003e\u003ccode\u003e7024e15\u003c/code\u003e\u003c/a\u003e Revert enrich file visitor with size info on \u003ccode\u003erelease\u003c/code\u003e branch (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37848\"\u003e#37848\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/d51476fda21330c037a04b43ec9a93a929d05b87\"\u003e\u003ccode\u003ed51476f\u003c/code\u003e\u003c/a\u003e Fix tryRunAsWorkerThread null-return test to match contract\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/090ebabc5b6f648e01c0269a321d80372fdbfe0f\"\u003e\u003ccode\u003e090ebab\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Add getLength() to FilePropertyVisitor.VisitState\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/bceab24677298144860f6919bdcb031e806dbf23\"\u003e\u003ccode\u003ebceab24\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix annotation\u0026quot;\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.5.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `dnsjava:dnsjava` from 3.6.4 to 3.6.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dnsjava/dnsjava/releases\"\u003ednsjava:dnsjava's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHandle canceled keys in UDP client (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle interrupts on NIO selector thread (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/396\"\u003e#396\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/397\"\u003e#397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix config option key names in README (\u003ca href=\"https://github.com/lostnet\"\u003e\u003ccode\u003e@​lostnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/399\"\u003e#399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle invalid/uninitialized file times in hosts file (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/400\"\u003e#400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003egetXxxAsByteArray()\u003c/code\u003e getters and overload with escape boolean (\u003ca href=\"https://github.com/MMauro94\"\u003e\u003ccode\u003e@​MMauro94\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/404\"\u003e#404\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/405\"\u003e#405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eNote\u003c/strong\u003e: The tag for this release is \u003ccode\u003ev3.6.5-1\u003c/code\u003e, because the v3.6.5 tag accidentally pointed to a local branch and cannot be changed anymore because of the immutable releases. The Maven artifacts from the \u003ca href=\"https://github.com/dnsjava/dnsjava/actions/runs/26331191483\"\u003eActions run\u003c/a\u003e are correct.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-1\"\u003ehttps://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-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/dnsjava/dnsjava/blob/master/Changelog\"\u003ednsjava:dnsjava's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e05/23/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.5 released\u003c/li\u003e\n\u003cli\u003eHandle canceled keys in UDP client (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle interrupts on NIO selector thread (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/396\"\u003e#396\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/397\"\u003e#397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix config option key names in README (\u003ca href=\"https://github.com/lostnet\"\u003e\u003ccode\u003e@​lostnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/399\"\u003e#399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle invalid/uninitialized file times in hosts file (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/400\"\u003e#400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd getXxxAsByteArray() getters and overload with escape boolean\n(\u003ca href=\"https://github.com/MMauro94\"\u003e\u003ccode\u003e@​MMauro94\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/404\"\u003e#404\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/405\"\u003e#405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e01/18/2026\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.4 released\u003c/li\u003e\n\u003cli\u003eFix Zone-class serialization (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid Double DNS Lookup for Names with Labels \u0026gt;= ndots (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/388\"\u003e#388\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent NPE when calling Message#getTSIG() on DNS request with\nbad header (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/384\"\u003e#384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUnwrap an exception in the legacy callback-based async interface (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/383\"\u003e#383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent ConcurrentModificationException in NIO clients\n(\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/379\"\u003e#379\u003c/a\u003e, \u003ca href=\"https://github.com/bhaveshthakker\"\u003e\u003ccode\u003e@​bhaveshthakker\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle \u003ccode\u003enull\u003c/code\u003e in all setSearchPath overloads equally (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce warning level of invalid \u003ccode\u003ehosts\u003c/code\u003e file entries (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove a lock on the hot-path in the \u003ccode\u003ehosts\u003c/code\u003e file parser (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDoH Resolver makes use of the Multi-Release jar and tests are executed\nfor Java 8 and 11+ implementations (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix DoH Resolver initial request delay (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e01/26/2025\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.3 released\u003c/li\u003e\n\u003cli\u003eSupport custom hosts file size (\u003ca href=\"https://github.com/flaming-archer\"\u003e\u003ccode\u003e@​flaming-archer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/349\"\u003e#349\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix origin handling in zone loaded from file or stream (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/346\"\u003e#346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent TCP port leak when closing IO (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix confusing parameter name in CNAMERecord (\u003ca href=\"https://github.com/chkal\"\u003e\u003ccode\u003e@​chkal\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/354\"\u003e#354\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOptionally disable ShutdownHook in NioClient (\u003ca href=\"https://github.com/SvenssonWeb\"\u003e\u003ccode\u003e@​SvenssonWeb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTSIG algorithm names from RFC 8945\u003c/li\u003e\n\u003cli\u003eMessage.toWire can exceed MAXLENGTH (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/355\"\u003e#355\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTCP query might fail if the shared buffer is full (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/357\"\u003e#357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDynamic updates silently truncates records (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix DoH initial request using recommended nanoTime calculation\n(\u003ca href=\"https://github.com/LinZong\"\u003e\u003ccode\u003e@​LinZong\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/345\"\u003e#345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e09/21/2024\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.2 released\u003c/li\u003e\n\u003cli\u003eAdd new IANA Trust Anchor (\u003ca href=\"https://github.com/technolord\"\u003e\u003ccode\u003e@​technolord\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/337\"\u003e#337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix Zone handling with signed SOA (\u003ca href=\"https://github.com/frankarinnet\"\u003e\u003ccode\u003e@​frankarinnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/335\"\u003e#335\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e07/28/2024\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e3.6.1 released\u003c/li\u003e\n\u003cli\u003eProperly fix LookupSession doesn't cache CNAMEs (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/316\"\u003e#316\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove JEP-418 SPI to Java 18 to support EOL workflows (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/329\"\u003e#329\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e07/21/2024\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dnsjava/dnsjava/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.vintage:junit-vintage-engine` from 6.0.3 to 6.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junit-team/junit-framework/releases\"\u003eorg.junit.vintage:junit-vintage-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.1.0 = Platform 6.1.0 + Jupiter 6.1.0 + Vintage 6.1.0\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JarvisCraft\"\u003e\u003ccode\u003e@​JarvisCraft\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5633\"\u003ejunit-team/junit-framework#5633\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Maran23\"\u003e\u003ccode\u003e@​Maran23\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5644\"\u003ejunit-team/junit-framework#5644\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.1.0-RC1 = Platform 6.1.0-RC1 + Jupiter 6.1.0-RC1 + Vintage 6.1.0-RC1\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0-RC1/release-notes/\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariokhoury4\"\u003e\u003ccode\u003e@​mariokhoury4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/4574\"\u003ejunit-team/junit-framework#4574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Ogu1208\"\u003e\u003ccode\u003e@​Ogu1208\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5145\"\u003ejunit-team/junit-framework#5145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/HyungGeun94\"\u003e\u003ccode\u003e@​HyungGeun94\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5271\"\u003ejunit-team/junit-framework#5271\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yalishevant\"\u003e\u003ccode\u003e@​yalishevant\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5316\"\u003ejunit-team/junit-framework#5316\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JINU-CHANG\"\u003e\u003ccode\u003e@​JINU-CHANG\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5290\"\u003ejunit-team/junit-framework#5290\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jaschdoc\"\u003e\u003ccode\u003e@​jaschdoc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5427\"\u003ejunit-team/junit-framework#5427\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kawshikbuet17\"\u003e\u003ccode\u003e@​kawshikbuet17\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5561\"\u003ejunit-team/junit-framework#5561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/msridhar\"\u003e\u003ccode\u003e@​msridhar\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5602\"\u003ejunit-team/junit-framework#5602\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.1.0-M1...r6.1.0-RC1\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.1.0-M1...r6.1.0-RC1\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.1.0-M1 = Platform 6.1.0-M1 + Jupiter 6.1.0-M1 + Vintage 6.1.0-M1\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.1.0-M1/release-notes/\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vy\"\u003e\u003ccode\u003e@​vy\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5041\"\u003ejunit-team/junit-framework#5041\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Pankraz76\"\u003e\u003ccode\u003e@​Pankraz76\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5006\"\u003ejunit-team/junit-framework#5006\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/arukiidou\"\u003e\u003ccode\u003e@​arukiidou\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5066\"\u003ejunit-team/junit-framework#5066\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laeubi\"\u003e\u003ccode\u003e@​laeubi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5092\"\u003ejunit-team/junit-framework#5092\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jihun4452\"\u003e\u003ccode\u003e@​jihun4452\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5088\"\u003ejunit-team/junit-framework#5088\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TWiStErRob\"\u003e\u003ccode\u003e@​TWiStErRob\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/junit-team/junit-framework/pull/5133\"\u003ejunit-team/junit-framework#5133\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.0...r6.1.0-M1\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.0...r6.1.0-M1\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/junit-team/junit-framework/commit/0dc3af1cb1973d257b5bc75d81e02454d5e4e556\"\u003e\u003ccode\u003e0dc3af1\u003c/code\u003e\u003c/a\u003e Release 6.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/1d130020c85170edcb46ce7ed1f7f78824e37c04\"\u003e\u003ccode\u003e1d13002\u003c/code\u003e\u003c/a\u003e Prepare 6.1.0 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/072b2175bbd7b0b3b26f5d928550ec7a21e68268\"\u003e\u003ccode\u003e072b217\u003c/code\u003e\u003c/a\u003e Update plugin spotless to v8.5.0 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5668\"\u003e#5668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/3a53480218f4b752a9ca77506e10632cd483c0f8\"\u003e\u003ccode\u003e3a53480\u003c/code\u003e\u003c/a\u003e Update Gradle to v9.5.1 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5666\"\u003e#5666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/0e18a20a9f98d063ae02b3ba19329143f5c7f034\"\u003e\u003ccode\u003e0e18a20\u003c/code\u003e\u003c/a\u003e Update zizmorcore/zizmor-action action to v0.5.4 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5669\"\u003e#5669\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/0a2634fb9cbbd057b02cf629d7d272c16d62be4b\"\u003e\u003ccode\u003e0a2634f\u003c/code\u003e\u003c/a\u003e Update github/codeql-action action to v4.35.5 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5671\"\u003e#5671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/4dbd5561b00ac761a62c516bfaec51c212a2d60c\"\u003e\u003ccode\u003e4dbd556\u003c/code\u003e\u003c/a\u003e Restructure workflows to have single \u0026quot;status\u0026quot; job (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5670\"\u003e#5670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/f2194cebe377512cb0ade388c62a881a0bcf5d3e\"\u003e\u003ccode\u003ef2194ce\u003c/code\u003e\u003c/a\u003e Increase timeout to reduce flakiness\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fdd2df65b763151cccbe669ea9e1c3155efcd\"\u003e\u003ccode\u003e5c8fdd2\u003c/code\u003e\u003c/a\u003e Update dependency org.apache.groovy:groovy to v5.0.6 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5659\"\u003e#5659\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/43c6982324602582902c9bdb213fd5e007f9cf3d\"\u003e\u003ccode\u003e43c6982\u003c/code\u003e\u003c/a\u003e Update dependency org.slf4j:slf4j-jdk14 to v2.0.18 (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5667\"\u003e#5667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.3...r6.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-assertions-core-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-assertions-core-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-runner-junit5-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-runner-junit5-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.kotest:kotest-runner-junit5-jvm` from 6.1.11 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kotest/kotest/releases\"\u003eio.kotest:kotest-runner-junit5-jvm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch3\u003e✨ Features\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eNew matchers / assertions\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecomparables.shouldBeAtLeast — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5831\"\u003e#5831\u003c/a\u003e)\nMultipleMatcherResult for combining multiple matcher results — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5723\"\u003e#5723\u003c/a\u003e)\nshouldContainExactCopies for lists — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5913\"\u003e#5913\u003c/a\u003e)\nCharacter matchers — \u003ca href=\"https://github.com/JordanLongstaff\"\u003e\u003ccode\u003e@​JordanLongstaff\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5921\"\u003e#5921\u003c/a\u003e)\nshouldBeSingle matcher — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6028\"\u003e#6028\u003c/a\u003e)\nshouldContainRepeats for strings — \u003ca href=\"https://github.com/AlexCue987\"\u003e\u003ccode\u003e@​AlexCue987\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6004\"\u003e#6004\u003c/a\u003e)\nInfix form for inspectors — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5920\"\u003e#5920\u003c/a\u003e)\nBlock-asserting overload for shouldBeFailure — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5927\"\u003e#5927\u003c/a\u003e)\nPer-call Eq overrides via a withEqs DSL — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6010\"\u003e#6010\u003c/a\u003e)\nPer-element data class diffs in collection comparisons — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5835\"\u003e#5835\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFramework / API\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eRun data tests singularly — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5574\"\u003e#5574\u003c/a\u003e)\nNew JVM test-suites module (deprecates JunitXmlReporter) — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5801\"\u003e#5801\u003c/a\u003e)\nSupport isolation modes on all KMP platforms — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5806\"\u003e#5806\u003c/a\u003e)\nBreadcrumbs support for Kotest spec files — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5793\"\u003e#5793\u003c/a\u003e)\nType-safe test metadata API — \u003ca href=\"https://github.com/PreAgile\"\u003e\u003ccode\u003e@​PreAgile\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5905\"\u003e#5905\u003c/a\u003e)\nPublic API for creating custom styles — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5814\"\u003e#5814\u003c/a\u003e)\nSupport multiple --test args joined by semicolon in KOTEST_INCLUDE_PATTERN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5922\"\u003e#5922\u003c/a\u003e)\nExtend life of deprecated Test containers and add onStart — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5896\"\u003e#5896\u003c/a\u003e)\nMake Arb.stringPattern multiplatform — \u003ca href=\"https://github.com/wilmveel\"\u003e\u003ccode\u003e@​wilmveel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6008\"\u003e#6008\u003c/a\u003e)\nComplete the permutations module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6016\"\u003e#6016\u003c/a\u003e)\nAdd Wasm WASI target to kotest-property and kotest-property-permutations — \u003ca href=\"https://github.com/jsoizo\"\u003e\u003ccode\u003e@​jsoizo\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6129\"\u003e#6129\u003c/a\u003e)\nMake fibonacci interval functions public — \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\nAdd Android instrumented test module — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eIntelliJ plugin\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eN-times setter for test invocation — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5815\"\u003e#5815\u003c/a\u003e)\nInvocation count on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5837\"\u003e#5837\u003c/a\u003e)\nSingular data-test run on the Kotest producer — \u003ca href=\"https://github.com/alfonsoristorato\"\u003e\u003ccode\u003e@​alfonsoristorato\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5843\"\u003e#5843\u003c/a\u003e)\nAmper-aware run-configuration producer — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5999\"\u003e#5999\u003c/a\u003e)\u003c/p\u003e\n\u003ch3\u003e🐛 Fixes\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eProperty testing / Arb / Exhaustive / shrinkers\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eInteger shrinkers proposing wrap-around values near MIN — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5931\"\u003e#5931\u003c/a\u003e)\nArb.ipAddressV4 couldn't produce 255 in any octet — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5938\"\u003e#5938\u003c/a\u003e)\nArb.multiple couldn't produce the largest multiple of k ≤ max — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5939\"\u003e#5939\u003c/a\u003e)\nArb.map maxSize off-by-one and minSize == maxSize crash — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5937\"\u003e#5937\u003c/a\u003e)\nArb.map half-open nextInt for targetSize — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5946\"\u003e#5946\u003c/a\u003e)\nArb.factor crash on k=1 / never producing k — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5959\"\u003e#5959\u003c/a\u003e)\nArb.date never producing Dec 31 in leap years — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5949\"\u003e#5949\u003c/a\u003e)\nArb.intRange overflow when domain.last == Int.MAX_VALUE — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5945\"\u003e#5945\u003c/a\u003e)\nArb.subsequence only producing prefixes — \u003ca href=\"https://github.com/sksamuel\"\u003e\u003ccode\u003e@​sksamuel\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/5958\"\u003e#5958\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/f3134ea99f5543bea79adf9b743b6b1035afef49\"\u003e\u003ccode\u003ef3134ea\u003c/code\u003e\u003c/a\u003e align compile toolchain with minimum supported Kotlin version for KLIB ABI co...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/24a4dc4420d09856029e02cf6516d0a9d38f2188\"\u003e\u003ccode\u003e24a4dc4\u003c/code\u003e\u003c/a\u003e Make fibonacci interval functions public (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6135\"\u003e#6135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/28d5cdfcef5b834c2be623d0fc8cd90ce82e265f\"\u003e\u003ccode\u003e28d5cdf\u003c/code\u003e\u003c/a\u003e allow building all targets via dispatch of kotest-test-examples (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6136\"\u003e#6136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/93bbb7ef5410e69511c913847d7dad1f99d7b2ba\"\u003e\u003ccode\u003e93bbb7e\u003c/code\u003e\u003c/a\u003e allow test kotest examples action dispatch (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6133\"\u003e#6133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/388f60245310f42b5f4a4e7c7e70d02d60e66de8\"\u003e\u003ccode\u003e388f602\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Use Kotlin 2.4.0 as the compile toolchain (target stays 2.2)\u0026quot; (\u003ca href=\"https://redirect.github.com/kotest/kotest/issues/6131\"\u003e#6131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/ee939057c767851634faeb2af82e6ad9d746081c\"\u003e\u003ccode\u003eee93905\u003c/code\u003e\u003c/a\u003e feat(kotest-property): Add Wasm WASI target to kotest-property and kotest-pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/b4f8520957f00ab6365d39971243f611687c3cd0\"\u003e\u003ccode\u003eb4f8520\u003c/code\u003e\u003c/a\u003e fix(kotest-property): Throw a descriptive error when Arb.distinct exhausts at...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/59a79f697c2a623f9028e318452f22634a9106ba\"\u003e\u003ccode\u003e59a79f6\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-symbol-processor): Do not duplicate specs across KSP pro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/08b16c7803311e534f49f0bd53b7bf0efa6416c5\"\u003e\u003ccode\u003e08b16c7\u003c/code\u003e\u003c/a\u003e fix(kotest-framework-engine): Invoke package config extensions for spec-level...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kotest/kotest/commit/1d711431c7c9d1999060e29ce4a464fe27fffc49\"\u003e\u003ccode\u003e1d71143\u003c/code\u003e\u003c/a\u003e fix(kotest-assertions-core): Fix swapped expected/actual in haveElementAt mes...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kotest/kotest/compare/6.1.11...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https:...\n\n_Description has been truncated_","html_url":"https://github.com/stvn101/openclaw/pull/32","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/stvn101%2Fopenclaw/issues/32","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/32/packages"}},{"old_version":"3.6.4","new_version":"3.6.5","update_type":"patch","path":null,"pr_created_at":"2026-06-17T22:08:26.000Z","version_change":"3.6.4 → 3.6.5","issue":{"uuid":"4687410963","node_id":"PR_kwDOR92bW87nsB1w","number":30,"state":"closed","title":"build(deps): bump the android-deps group across 1 directory with 17 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-19T22:04:56.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-17T22:08:26.000Z","updated_at":"2026-06-19T22:04:57.000Z","time_to_close":172590,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"android-deps","update_count":17,"packages":[{"name":"com.android.application","old_version":"9.0.1","new_version":"9.2.1"},{"name":"com.android.test","old_version":"9.0.1","new_version":"9.2.1"},{"name":"org.jetbrains.kotlin.plugin.compose","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"org.jetbrains.kotlin.plugin.serialization","old_version":"2.3.20","new_version":"2.4.0","repository_url":"https://github.com/JetBrains/kotlin"},{"name":"androidx.core:core-ktx","old_version":"1.18.0","new_version":"1.19.0"},{"name":"com.google.android.material:material","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/material-components/material-components-android"},{"name":"org.jetbrains.kotlinx:kotlinx-coroutines-android","old_version":"1.10.2","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.coroutines"},{"name":"org.jetbrains.kotlinx:kotlinx-serialization-json","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"com.squareup.okhttp3:okhttp","old_version":"5.3.2","new_version":"5.4.0","repository_url":"https://github.com/square/okhttp"},{"name":"org.bouncycastle:bcprov-jdk18on","old_version":"1.83","new_version":"1.84","repository_url":"https://github.com/bcgit/bc-java"},{"name":"dnsjava:dnsjava","old_version":"3.6.4","new_version":"3.6.5","repository_url":"https://github.com/dnsjava/dnsjava"},{"name":"io.kotest:kotest-runner-junit5-jvm","old_version":"6.1.10","new_version":"6.1.11","repository_url":"https://github.com/kotest/kotest"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.3","new_version":"6.1.0","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the android-deps group with 14 updates in the /apps/android directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.android.application | `9.0.1` | `9.2.1` |\n| com.android.test | `9.0.1` | `9.2.1` |\n| [org.jetbrains.kotlin.plugin.compose](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| [org.jetbrains.kotlin.plugin.serialization](https://github.com/JetBrains/kotlin) | `2.3.20` | `2.4.0` |\n| androidx.core:core-ktx | `1.18.0` | `1.19.0` |\n| [com.google.android.material:material](https://github.com/material-components/material-components-android) | `1.13.0` | `1.14.0` |\n| [org.jetbrains.kotlinx:kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) | `1.10.2` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [com.squareup.okhttp3:okhttp](https://github.com/square/okhttp) | `5.3.2` | `5.4.0` |\n| [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.84` |\n| [dnsjava:dnsjava](https://github.com/dnsjava/dnsjava) | `3.6.4` | `3.6.5` |\n| [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) | `6.1.10` | `6.1.11` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.3` | `6.1.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.1` |\n\n\nUpdates `com.android.application` from 9.0.1 to 9.2.1\n\nUpdates `com.android.test` from 9.0.1 to 9.2.1\n\nUpdates `org.jetbrains.kotlin.plugin.compose` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.compose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.compose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlin.plugin.serialization` from 2.3.20 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/kotlin/releases\"\u003eorg.jetbrains.kotlin.plugin.serialization's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eKotlin 2.4.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\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/JetBrains/kotlin/blob/master/ChangeLog.md\"\u003eorg.jetbrains.kotlin.plugin.serialization's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003eAnalysis API\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83867\"\u003e\u003ccode\u003eKT-83867\u003c/code\u003e\u003c/a\u003e OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83723\"\u003e\u003ccode\u003eKT-83723\u003c/code\u003e\u003c/a\u003e [Analysis API] Enable experimental KDoc resolver by default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83388\"\u003e\u003ccode\u003eKT-83388\u003c/code\u003e\u003c/a\u003e Analysis API: properly support KMP in KotlinPackageProvider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-65683\"\u003e\u003ccode\u003eKT-65683\u003c/code\u003e\u003c/a\u003e Analysis API: Dangling file session creation causes a \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e contract violation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Code Compilation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-78946\"\u003e\u003ccode\u003eKT-78946\u003c/code\u003e\u003c/a\u003e Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. FIR\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-68260\"\u003e\u003ccode\u003eKT-68260\u003c/code\u003e\u003c/a\u003e K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION with text \u003ccode\u003e::lam1\u003c/code\u003e, unexpected element of type: no element found” with illegal callable reference call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-70896\"\u003e\u003ccode\u003eKT-70896\u003c/code\u003e\u003c/a\u003e AA: False positive deprecation warning with override of built-in method in JDK mapped class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84711\"\u003e\u003ccode\u003eKT-84711\u003c/code\u003e\u003c/a\u003e K2 IDE sometimes loses FIR plugin-generated declarations after file changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84625\"\u003e\u003ccode\u003eKT-84625\u003c/code\u003e\u003c/a\u003e Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84596\"\u003e\u003ccode\u003eKT-84596\u003c/code\u003e\u003c/a\u003e Improve K2 Jooq completion performance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84525\"\u003e\u003ccode\u003eKT-84525\u003c/code\u003e\u003c/a\u003e KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83546\"\u003e\u003ccode\u003eKT-83546\u003c/code\u003e\u003c/a\u003e Kotlin analysis reach ClsCustomNavigationPolicy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84259\"\u003e\u003ccode\u003eKT-84259\u003c/code\u003e\u003c/a\u003e Move CommonDefaultImportsProvider to the frontend independent module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82945\"\u003e\u003ccode\u003eKT-82945\u003c/code\u003e\u003c/a\u003e Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-71135\"\u003e\u003ccode\u003eKT-71135\u003c/code\u003e\u003c/a\u003e AA: exception from sealed inheritors checker when \u003ccode\u003eanalyzeCopy\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Infrastructure\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83905\"\u003e\u003ccode\u003eKT-83905\u003c/code\u003e\u003c/a\u003e Analysis API: Improve UX with test data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84913\"\u003e\u003ccode\u003eKT-84913\u003c/code\u003e\u003c/a\u003e Extract compiler classes used by the PSI \u0026amp; Analysis API to a separate module\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-64986\"\u003e\u003ccode\u003eKT-64986\u003c/code\u003e\u003c/a\u003e Analysis API: Implement Analysis API tests for different KMP Platforms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84776\"\u003e\u003ccode\u003eKT-84776\u003c/code\u003e\u003c/a\u003e The test data manager misses the redundancy check in the update mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84962\"\u003e\u003ccode\u003eKT-84962\u003c/code\u003e\u003c/a\u003e The test data manager misses -ea flag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84388\"\u003e\u003ccode\u003eKT-84388\u003c/code\u003e\u003c/a\u003e Preserve the EOF status in the test data manager to avoid extra changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84362\"\u003e\u003ccode\u003eKT-84362\u003c/code\u003e\u003c/a\u003e Analysis API tests produce many warnings due to \u0026quot;not yet loaded registry\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84279\"\u003e\u003ccode\u003eKT-84279\u003c/code\u003e\u003c/a\u003e Test Data Manager fails on a clean build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83913\"\u003e\u003ccode\u003eKT-83913\u003c/code\u003e\u003c/a\u003e Exclude compiler-based Analysis API tests from Git tracking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-80379\"\u003e\u003ccode\u003eKT-80379\u003c/code\u003e\u003c/a\u003e Extract per-module test generators for AA tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84120\"\u003e\u003ccode\u003eKT-84120\u003c/code\u003e\u003c/a\u003e Move CLI modules out of kotlin-compiler-fe10-for-ide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-83200\"\u003e\u003ccode\u003eKT-83200\u003c/code\u003e\u003c/a\u003e Track external dependencies of the Analysis API modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. Light Classes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-82434\"\u003e\u003ccode\u003eKT-82434\u003c/code\u003e\u003c/a\u003e Light classes should prefer enum entries to properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-84200\"\u003e\u003ccode\u003eKT-84200\u003c/code\u003e\u003c/a\u003e SLC: return type is not boxed for delegated methods with generic original method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://youtrack.jetbrains.com/issue/KT-72451\"\u003e\u003ccode\u003eKT-72451\u003c/code\u003e\u003c/a\u003e \u0026quot;CCE: class PsiPrimitiveType cannot be cast to class PsiClassType\u0026quot; with same-named enum class and typealias\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAnalysis API. PSI\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/JetBrains/kotlin/commit/add726ca8c82922b6ab4cb2a27ae738d6a780817\"\u003e\u003ccode\u003eadd726c\u003c/code\u003e\u003c/a\u003e Add ChangeLog for 2.4.0-RC2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/69a4a81ef24de99aec8c05d175239ddfe29c876d\"\u003e\u003ccode\u003e69a4a81\u003c/code\u003e\u003c/a\u003e [Wasm] Add binaryen per-file arguments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/8907c635d4a7101e318b895c2829fc917c64e92c\"\u003e\u003ccode\u003e8907c63\u003c/code\u003e\u003c/a\u003e [KGP] Suppress duplicate compiler warning output when --warning-mode=all is a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f9bef128ea07e986602e3c6524cea85038308ae6\"\u003e\u003ccode\u003ef9bef12\u003c/code\u003e\u003c/a\u003e [KGP] Add failing test for duplicate compiler warning output via Problems API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/7fe49c227af21127ab4eb39a2da693e14a068fe4\"\u003e\u003ccode\u003e7fe49c2\u003c/code\u003e\u003c/a\u003e KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/13d25e2c581f55cecbe80bf9e9359af14fa00ef9\"\u003e\u003ccode\u003e13d25e2\u003c/code\u003e\u003c/a\u003e KT-86268: Regression test added\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/f7d1a76541b33871e9be156143ceb904588c4863\"\u003e\u003ccode\u003ef7d1a76\u003c/code\u003e\u003c/a\u003e [JKlib] Fix JAR deserializer configuration.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/5cec663affd3fe9e7b7342e336ad4952ae59a2ad\"\u003e\u003ccode\u003e5cec663\u003c/code\u003e\u003c/a\u003e [JKlib] Wire up JvmBuiltInClassDescriptorFactory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/ef146114de8b0db65ff96b21a67c87da95a8c82e\"\u003e\u003ccode\u003eef14611\u003c/code\u003e\u003c/a\u003e Make the default stability of non-final classes \u003ccode\u003eUnknown\u003c/code\u003e instead of \u003ccode\u003eStable\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/kotlin/commit/d76473afd242d7655c975a6346ed4b24c35573ca\"\u003e\u003ccode\u003ed76473a\u003c/code\u003e\u003c/a\u003e [Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test failures\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/kotlin/compare/v2.3.20...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `androidx.core:core-ktx` from 1.18.0 to 1.19.0\n\nUpdates `com.google.android.material:material` from 1.13.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/material-components/material-components-android/releases\"\u003ecom.google.android.material:material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.14.0\u003c/h2\u003e\n\u003ch1\u003eNew in 1.14.0!\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eExpressive Themes (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#material3expressive-themes\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Lists (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/List.md\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/CommonButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Icon Button Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/IconButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Button Group Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ButtonGroup.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive FAB Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/FloatingActionButton.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Top App Bar Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/TopAppBar.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Bar (BottomNavigationView) Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/BottomNavigation.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Navigation Rail Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/NavigationRail.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Search Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Search.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Progress Indicator Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/ProgressIndicator.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpressive Slider Styles (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/components/Slider.md#m3-expressive\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmphasized Typescale (\u003ca href=\"https://github.com/material-components/material-components-android/blob/master/docs/theming/Typography.md#emphasized-scale\"\u003edoc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImportant\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRequired \u003ccode\u003eminSdkVersion\u003c/code\u003e is now 23 or higher, for Material and \u003ca href=\"https://developer.android.com/jetpack/androidx/versions#version-table\"\u003eAndroidX\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLibrary is now built with Android Gradle Plugin (AGP) 8.11.1 and Gradle 8.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependency Updates\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDependency\u003c/th\u003e\n\u003cth\u003ePrevious version\u003c/th\u003e\n\u003cth\u003eNew version\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.constraintlayout:constraintlayout\u003c/td\u003e\n\u003ctd\u003e2.1.0\u003c/td\u003e\n\u003ctd\u003e2.2.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.core:core\u003c/td\u003e\n\u003ctd\u003e1.6.0\u003c/td\u003e\n\u003ctd\u003e1.16.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eandroidx.customview:customview\u003c/td\u003e\n\u003ctd\u003eN/A\u003c/td\u003e\n\u003ctd\u003e1.2.0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecom.android.tools.build:gradle\u003c/td\u003e\n\u003ctd\u003e8.7.3\u003c/td\u003e\n\u003ctd\u003e8.11.1\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eLibrary Updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the bug that setBackground will reset the internal MaterialShapeDrawable for lift-on-scroll feature. (1adc50110ed6491661f89aa535355b1480fac73a)\u003c/li\u003e\n\u003cli\u003eAdd support for navigation button with circle background (015e0534e1a6205224097f258102f913832f99ed)\u003c/li\u003e\n\u003cli\u003eImprove keyboard navigation in TopAppBar catalog demos (98a73a61d272d3e38ee87dd4b322f7787c374a9c)\u003c/li\u003e\n\u003cli\u003eRemoved special key shortcut and keyboard navigation cluster for top app bar for correct keyboard navigation a11y. (ee52adbf051f744f2345ec5b7f4ab4df3b101d4d)\u003c/li\u003e\n\u003cli\u003eUpdated ripple color on actions in M3 toolbar. (3b971c9fe9d6ae9a175d96a448a2e740fa97996f)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomAppBar\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eRemove special key shortcut and keyboard navigation cluster for bottom app bar for correct keyboard navigation a11y. (5c73d7a9284fb8e8409452bb95751bf70912acfd)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomNavigationView\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eFix navigation item layout in non-compact windows (78189012dada1fae4516eaccab7b8f75c481aa73)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eBottomSheet\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated enableEdgeToEdge for bottom sheet dialogs on API 35+. (603f1ef9d5223fc06fa432c4175473eda2138330)\u003c/li\u003e\n\u003cli\u003ePrevent ACTION_DOWN events on the BottomSheetHandleDragView from setting touchingScrollChild to true. (af7f254bf660704368d46e630d34a81c479fa1c7)\u003c/li\u003e\n\u003cli\u003eFixed keyboard animation on Android 14 (a0b4dfa8769f98851efe97569c900f75eb0d5ef2)\u003c/li\u003e\n\u003cli\u003eFixed crash when protections are set before setContentView is called (d2119098489f6f6b55d77f2c7966b8ddf16c90ed)\u003c/li\u003e\n\u003cli\u003eAdded half-expanded state description for accessibility (95e7b452088d88005982a3f29ec212ef7ee8696d)\u003c/li\u003e\n\u003cli\u003eAdded support for androidx.core ProtectionLayout API and update dependency to 1.16 (e7f9f639d2f4a3b9f619ce704df82cbb14e49222)\u003c/li\u003e\n\u003cli\u003eMake handle respond to keyboard input (1ee07687af2c4c84f515e45c1b809d65aeecbbf4)\u003c/li\u003e\n\u003cli\u003eDelete duplicate \u0026quot;Handling insets and fullscreen\u0026quot; section (5e7e8238f7be448af6b4db4b2ad6128737c0bc50)\u003c/li\u003e\n\u003cli\u003eAdded support for Nested Scrolling with multiple nested scroll children. (4e4e8f3388beb7e82a87cb67142aa34444a79740)\u003c/li\u003e\n\u003cli\u003eMake behavior_draggableOnNestedScroll public (a67afdff0d207239d0f427a37e44074936db3166)\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/material-components/material-components-android/commit/66c334b7946dabf33adfe1a2b7cad6bcaa4ea3ad\"\u003e\u003ccode\u003e66c334b\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0 stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/12e57b5143609a96de8516426336bcf3b3e321f7\"\u003e\u003ccode\u003e12e57b5\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters and getters for stroke widths and inner inset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/f4652d6af613395835b17ce329ceb03f43fc4a84\"\u003e\u003ccode\u003ef4652d6\u003c/code\u003e\u003c/a\u003e [NavigationView] Improve focus saving when opening NavigationView\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/14b9ac97b0863fa7fea6f59954441cea9f4e7e14\"\u003e\u003ccode\u003e14b9ac9\u003c/code\u003e\u003c/a\u003e [Focus Rings] Add setters for outer and inner stroke colors and for refreshin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/d6de1da0f5532090d8b7de697e13c180f56e11e1\"\u003e\u003ccode\u003ed6de1da\u003c/code\u003e\u003c/a\u003e [A11y][BottomSheet] Auto-expand when a focused view is off-screen in non-touc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/41cfb65e8393cd7ff0f9dc082b400c852405e9cc\"\u003e\u003ccode\u003e41cfb65\u003c/code\u003e\u003c/a\u003e [A11y][NavigationView] Request and restore focus when opened and closed in Dr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/8f63e9485bf6da5a9a0aaefa4bbf26c8ec1364a5\"\u003e\u003ccode\u003e8f63e94\u003c/code\u003e\u003c/a\u003e [Catalog] Fix lift on scroll glitchiness in All Components demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/80aa0cc0233af0e81a846271de0d5218beeceeaf\"\u003e\u003ccode\u003e80aa0cc\u003c/code\u003e\u003c/a\u003e [Release] Update library version to 1.14.0-rc01\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/fd44c9d58699e18de06ca5de8687fe79f390568b\"\u003e\u003ccode\u003efd44c9d\u003c/code\u003e\u003c/a\u003e [Button] [SplitButton] Fix inset and optical centering issue for SplitButton ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/material-components/material-components-android/commit/e6ae416e7fc791d733eedde96ffea66d313ef231\"\u003e\u003ccode\u003ee6ae416\u003c/code\u003e\u003c/a\u003e [SearchView] Make sure IME is hidden when EditText loses focus\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/material-components/material-components-android/compare/1.13.0...1.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.10.2 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. B\nefore, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003e1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md\"\u003eorg.jetbrains.kotlinx:kotlinx-coroutines-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking changes and deprecations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003ePromise\u003c/code\u003e-related functions from JS and Wasm/JS to the new \u003ccode\u003eweb\u003c/code\u003e target. On Wasm/JS, this is a breaking change. Before the change, \u003ccode\u003ePromise\u003c/code\u003e on Wasm/JS could work with arbitrary Kotlin types, but now, only \u003ccode\u003eJsAny\u003c/code\u003e subtypes are accepted (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4563\"\u003e#4563\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eChanged handling of coroutine exceptions that can't be propagated on JS and Wasm/JS. Before, exceptions were logged, but now, they are reported to the JS runtime (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4451\"\u003e#4451\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4631\"\u003e#4631\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDeprecated using \u003ccode\u003eCoroutineDispatcher\u003c/code\u003e as the coroutine context key; now, \u003ccode\u003eContinuationInterceptor\u003c/code\u003e has to be used instead (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4333\"\u003e#4333\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdvanced the deprecation levels on \u003ccode\u003ekotlinx-coroutines-test\u003c/code\u003e APIs (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4604\"\u003e#4604\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded lint functions that mark passing a \u003ccode\u003eJob\u003c/code\u003e to coroutine builders as deprecated (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4435\"\u003e#4435\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003erunBlocking\u003c/code\u003e in code shared between JVM and Native (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4368\"\u003e#4368\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ecallsInPlace(EXACTLY_ONCE)\u003c/code\u003e contract to \u003ccode\u003esuspendCancellableCoroutine\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4574\"\u003e#4574\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eflowOn\u003c/code\u003e incorrectly handling \u003ccode\u003eThreadContextElement\u003c/code\u003e updates (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4403\"\u003e#4403\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed exceptions in user-supplied \u003ccode\u003eThread.UncaughtExceptionHandler\u003c/code\u003e instances causing the internal coroutines machinery to fail (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4516\"\u003e#4516\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCoroutineDispatcher.asScheduler\u003c/code\u003e in the RxJava integration not cancelling outstanding work when a \u003ccode\u003eWorker\u003c/code\u003e gets cancelled, which led to memory leaks in some scenarios (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4615\"\u003e#4615\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSharedFlow\u003c/code\u003e entering an invalid state when a subscriber and an emitter are cancelled simultaneously (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4583\"\u003e#4583\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed an R8 optimization leading to \u003ccode\u003eshareIn\u003c/code\u003e/\u003ccode\u003estateIn\u003c/code\u003e coroutines getting garbage-collected (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4646\"\u003e#4646\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/solevic\"\u003e\u003ccode\u003e@​solevic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSmall additions\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eCompletableDeferred.asDeferred\u003c/code\u003e for obtaining a read-only \u003ccode\u003eDeferred\u003c/code\u003e view (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4408\"\u003e#4408\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eSharedFlow.asFlow\u003c/code\u003e for obtaining a \u003ccode\u003eFlow\u003c/code\u003e view with hidden hot flow semantics (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4530\"\u003e#4530\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/g000sha256\"\u003e\u003ccode\u003e@​g000sha256\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow.collectLatest\u003c/code\u003e overload returning \u003ccode\u003eNothing\u003c/code\u003e to assist with finding unreachable code (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4454\"\u003e#4454\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eReceiveChannel.consumeTo\u003c/code\u003e for consuming a \u003ccode\u003eReceiveChannel\u003c/code\u003e into a \u003ccode\u003eMutableCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4520\"\u003e#4520\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e overload returning a \u003ccode\u003eStateFlow\u0026lt;T\u0026gt;\u003c/code\u003e, similar to \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;.onSubscription\u003c/code\u003e returning \u003ccode\u003eSharedFlow\u0026lt;T\u0026gt;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4275\"\u003e#4275\u003c/a\u003e). Thanks, \u003ca href=\"https://github.com/xit0c\"\u003e\u003ccode\u003e@​xit0c\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded terminal \u003ccode\u003eFlow\u003c/code\u003e operators for collecting a \u003ccode\u003eFlow\u003c/code\u003e to a \u003ccode\u003eMap\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/1541\"\u003e#1541\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog relative to version 1.11.0\u003c/h3\u003e\n\u003cp\u003eNo changes, only the version is increased.\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc02\u003c/h2\u003e\n\u003cp\u003eRestored binary compatibility with 1.10.2 and older versions on Wasm/JS for usages of \u003ccode\u003ePromise\u003c/code\u003e-related functions (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0-rc01\u003c/h2\u003e\n\u003ch3\u003eVarious\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKotlin was updated to 2.2.20 (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4545\"\u003e#4545\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved the published jar files (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/3842\"\u003e#3842\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4599\"\u003e#4599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eVarious documentation improvements, including complete rewrites of structured concurrency and error handling-related KDoc (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4433\"\u003e#4433\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4596\"\u003e#4596\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/Kotlin/kotlinx.coroutines/commit/8564f65764d3d05893cec026c6e94250e2b23874\"\u003e\u003ccode\u003e8564f65\u003c/code\u003e\u003c/a\u003e Version 1.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/a4c6af96c15fe30f5d4e8b810ea74f8babd5805c\"\u003e\u003ccode\u003ea4c6af9\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/ef917b460aa741691fbf991ee1b813049cae18c9\"\u003e\u003ccode\u003eef917b4\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/5ebc421e341bf2ddce734d369da87df1985e80bd\"\u003e\u003ccode\u003e5ebc421\u003c/code\u003e\u003c/a\u003e Update the release procedure description (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4670\"\u003e#4670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/95f46a073bc4a1230352108cea1835fd22219a80\"\u003e\u003ccode\u003e95f46a0\u003c/code\u003e\u003c/a\u003e Remove old maven repository settings (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4672\"\u003e#4672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/b4f4f0aa6acb692f3fbcadd70e4958e3e9d370fc\"\u003e\u003ccode\u003eb4f4f0a\u003c/code\u003e\u003c/a\u003e Fix package name of \u003ccode\u003eToMapCollectionSamplesTest\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4674\"\u003e#4674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/86738dca7dc9ac82249abc8206263fa0065ee631\"\u003e\u003ccode\u003e86738dc\u003c/code\u003e\u003c/a\u003e Added templates to the issue creation wizard (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4654\"\u003e#4654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/330fcc221fb583f0b119f34191f735a73b827378\"\u003e\u003ccode\u003e330fcc2\u003c/code\u003e\u003c/a\u003e Version 1.11.0-rc02\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/e31cef6e9f2d26794be7d75ecbf3033b6432d582\"\u003e\u003ccode\u003ee31cef6\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/commit/dc6e9f61eaf3a67f4bf474a7987aedc3f16cef37\"\u003e\u003ccode\u003edc6e9f6\u003c/code\u003e\u003c/a\u003e Restore Promise-related functions on Wasm/JS as HIDDEN (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.coroutines/issues/4661\"\u003e#4661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.2...1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.kotlinx:kotlinx-serialization-json` from 1.10.0 to 1.11.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/releases\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.11.0\u003c/h2\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides a new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md\"\u003eorg.jetbrains.kotlinx:kotlinx-serialization-json's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.11.0 / 2026-04-10\u003c/h1\u003e\n\u003cp\u003eThis release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.\u003c/p\u003e\n\u003ch2\u003eExpose Json exceptions structure\u003c/h2\u003e\n\u003cp\u003eTo make working with exceptions easier and providing proper error codes in e.g., REST APIs,\nclasses \u003ccode\u003eJsonException\u003c/code\u003e, \u003ccode\u003eJsonDecodingException\u003c/code\u003e, and \u003ccode\u003eJsonEncodingException\u003c/code\u003e are now public.\nThey have relevant public properties, such as \u003ccode\u003eshortMessage\u003c/code\u003e, \u003ccode\u003epath\u003c/code\u003e, \u003ccode\u003eoffset\u003c/code\u003e, and others.\nThis API is currently experimental, and we're going to improve it further in the subsequent releases.\nSee the linked issues for the details: \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1930\"\u003e#1930\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/1877\"\u003e#1877\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eAbility to hide user input from exception messages for security/privacy reasons.\u003c/h2\u003e\n\u003cp\u003eHistorically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.\nSuch behavior may pose additional challenges for logging, analytics, and other systems, since\na system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.\nTo address this issue, a new property \u003ccode\u003eexceptionsWithDebugInfo\u003c/code\u003e is added to \u003ccode\u003eJsonConfiguration\u003c/code\u003e.\nDisable it to hide user input from exception messages.\nIMPORTANT: This behavior will be enabled by default when this property becomes stable.\nSee \u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2590\"\u003e#2590\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003eBugfixes and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse a specialized writeDecimalLong method for IO stream integrations in Json (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3152\"\u003e#3152\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/Kotlin/kotlinx.serialization/commit/6956af2e6073347c7832c3c5b374fa3b5a345956\"\u003e\u003ccode\u003e6956af2\u003c/code\u003e\u003c/a\u003e Prepare 1.11 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/390d84c68a19cbf7fa453dec22a333648bde49b4\"\u003e\u003ccode\u003e390d84c\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/master' into dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/431fe2dc0a144300b33038820d24fc30302c8abc\"\u003e\u003ccode\u003e431fe2d\u003c/code\u003e\u003c/a\u003e Use local repo for publishing (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/05c12b60a6717b99053fb82e1f94d2f859727374\"\u003e\u003ccode\u003e05c12b6\u003c/code\u003e\u003c/a\u003e Add usage attribute to \u0026quot;testRepositories\u0026quot; configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/a4e1f082ef2e72caa139b474c05657de6015da20\"\u003e\u003ccode\u003ea4e1f08\u003c/code\u003e\u003c/a\u003e Bump Kover version to 0.9.8 release (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/304e858ccc7066854637d86ab80056f5f2bcc094\"\u003e\u003ccode\u003e304e858\u003c/code\u003e\u003c/a\u003e Expose Json exceptions structure (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/4a0338ef5093d765138151bc30282e909ca459e4\"\u003e\u003ccode\u003e4a0338e\u003c/code\u003e\u003c/a\u003e Included G Play SDK verification file for core-jvm (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3169\"\u003e#3169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/421f64c74f0ea6d4a3cdc8dd483505366e3f6c8f\"\u003e\u003ccode\u003e421f64c\u003c/code\u003e\u003c/a\u003e CBOR: Relax value range check when decoding numbers (\u003ca href=\"https://redirect.github.com/Kotlin/kotlinx.serialization/issues/3167\"\u003e#3167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/85a4f126ec491c77e2b3686cc22c1bae27a20783\"\u003e\u003ccode\u003e85a4f12\u003c/code\u003e\u003c/a\u003e KT-84955: mark apple x64 tagets as deprecated error\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/commit/bd38b0e49bce38d1a55576e89856bc63990167ed\"\u003e\u003ccode\u003ebd38b0e\u003c/code\u003e\u003c/a\u003e Remove dead code\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kotlin/kotlinx.serialization/compare/v1.10.0...v1.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.squareup.okhttp3:okhttp` from 5.3.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/square/okhttp/blob/master/CHANGELOG.md\"\u003ecom.squareup.okhttp3:okhttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 5.4.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-06-08\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew: Add superpowers to interceptors. Interceptors can now override anything settable on\n\u003ccode\u003eOkHttpClient.Builder\u003c/code\u003e, such as the cache, connection pool, socket factory, and DNS. We expect\nthis will allow most users to use interceptors everywhere, insted of mixing and matching\ninterceptors with custom \u003ccode\u003eCall.Factory\u003c/code\u003e wrappers.\u003c/li\u003e\n\u003cli\u003eFix: Limit each HTTP/2 response to 256 KiB of total headers.\u003c/li\u003e\n\u003cli\u003eUpgrade: [kotlinx.coroutines 1.11.0][coroutines_1_11_0]. This is used by the optional\n\u003ccode\u003eokhttp-coroutines\u003c/code\u003e artifact.\u003c/li\u003e\n\u003cli\u003eUpgrade: [GraalVM 25.0.3][graalvm_25].\u003c/li\u003e\n\u003cli\u003eUpgrade: [Okio 3.17.0][okio_3_17_0].\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/square/okhttp/commit/61423f472da24e0ccc42b6a2c0863fb27932fea5\"\u003e\u003ccode\u003e61423f4\u003c/code\u003e\u003c/a\u003e Prepare for release 5.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/d7e6effcb6852ca848b5f497032546b98b0a6370\"\u003e\u003ccode\u003ed7e6eff\u003c/code\u003e\u003c/a\u003e Update eclipse.osgi to v3.24.200 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9480\"\u003e#9480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7a350986e3231a7b81cbfcc6e3c185327033422b\"\u003e\u003ccode\u003e7a35098\u003c/code\u003e\u003c/a\u003e Update bnd to v7.3.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9475\"\u003e#9475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/0c5a45b1174b8f735cc251eb19faaed87b65d868\"\u003e\u003ccode\u003e0c5a45b\u003c/code\u003e\u003c/a\u003e Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9468\"\u003e#9468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/113ad17f70af6984a1a8b4d46024118e5409c44b\"\u003e\u003ccode\u003e113ad17\u003c/code\u003e\u003c/a\u003e Update dependency macos to v26 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9457\"\u003e#9457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/84f601af03d047eef3f4b2f0ca6b6f72303dcea1\"\u003e\u003ccode\u003e84f601a\u003c/code\u003e\u003c/a\u003e Update shadow.plugin to v9.4.2 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9466\"\u003e#9466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/7d463f4bcfca91e4466037f2c65c7c700545d64c\"\u003e\u003ccode\u003e7d463f4\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9464\"\u003e#9464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/3bf00f52921a0727bd18997cd92112dd2e582ed7\"\u003e\u003ccode\u003e3bf00f5\u003c/code\u003e\u003c/a\u003e Update plugin com.diffplug.spotless to v8.6.0 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9463\"\u003e#9463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/cfc45a3f146d2389797a3d51d405e9118bed56c9\"\u003e\u003ccode\u003ecfc45a3\u003c/code\u003e\u003c/a\u003e Update spotless.plugin to v8.5.1 (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9456\"\u003e#9456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/square/okhttp/commit/81c5006e336c1cb67870694e38707e2c1c44fb34\"\u003e\u003ccode\u003e81c5006\u003c/code\u003e\u003c/a\u003e Apply gradle lint correctly (\u003ca href=\"https://redirect.github.com/square/okhttp/issues/9459\"\u003e#9459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/square/okhttp/compare/parent-5.3.2...parent-5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bcprov-jdk18on` from 1.83 to 1.84\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html\"\u003eorg.bouncycastle:bcprov-jdk18on's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bcgit/bc-java/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dnsjava:dnsjava` from 3.6.4 to 3.6.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dnsjava/dnsjava/releases\"\u003ednsjava:dnsjava's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eHandle canceled keys in UDP client (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle interrupts on NIO selector thread (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/396\"\u003e#396\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/397\"\u003e#397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix config option key names in README (\u003ca href=\"https://github.com/lostnet\"\u003e\u003ccode\u003e@​lostnet\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/399\"\u003e#399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle invalid/uninitialized file times in hosts file (\u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/400\"\u003e#400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003egetXxxAsByteArray()\u003c/code\u003e getters and overload with escape boolean (\u003ca href=\"https://github.com/MMauro94\"\u003e\u003ccode\u003e@​MMauro94\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/404\"\u003e#404\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/dnsjava/dnsjava/issues/405\"\u003e#405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eNote\u003c/strong\u003e: The tag for this release is \u003ccode\u003ev3.6.5-1\u003c/code\u003e, because the v3.6.5 tag accidentally pointed to a local branch and cannot be changed anymore because of the immutable releases. The Maven artifacts from the \u003ca href=\"https://github.com/dnsjava/dnsjava/actions/runs/26331191483\"\u003eActions run\u003c/a\u003e are correct.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-1\"\u003ehttps://github.com/dnsjava/dnsjava/compare/v3.6.4...v3.6.5-1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/s...\n\n_Description has been truncated_","html_url":"https://github.com/bhaylorina/openclaw-zero-token-fixed/pull/30","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhaylorina%2Fopenclaw-zero-token-fixed/issues/30","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/30/packages"}}]}