{"id":9530,"name":"org.mariadb.jdbc:mariadb-java-client","ecosystem":"maven","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j","issues_count":484,"created_at":"2025-06-06T22:35:55.486Z","updated_at":"2025-06-06T22:35:55.486Z","purl":"pkg:maven/org.mariadb.jdbc:mariadb-java-client","metadata":{"id":4948205,"name":"org.mariadb.jdbc:mariadb-java-client","ecosystem":"maven","description":"JDBC driver for MariaDB and MySQL","homepage":"https://mariadb.com/kb/en/mariadb/about-mariadb-connector-j/","licenses":"LGPL-2.1-or-later","normalized_licenses":["LGPL-2.1-or-later"],"repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j","keywords_array":[],"namespace":"org.mariadb.jdbc","versions_count":120,"first_release_published_at":"2014-04-04T07:25:22.000Z","latest_release_published_at":"2025-03-27T02:41:05.000Z","latest_release_number":"3.5.3","last_synced_at":"2025-06-04T21:02:10.237Z","created_at":"2022-07-27T05:27:29.273Z","updated_at":"2025-06-04T21:02:10.238Z","registry_url":"https://central.sonatype.com/artifact/org.mariadb.jdbc/mariadb-java-client/","install_command":null,"documentation_url":"https://appdoc.app/artifact/org.mariadb.jdbc/mariadb-java-client/","metadata":{},"repo_metadata":{"id":26617195,"uuid":"30072532","full_name":"mariadb-corporation/mariadb-connector-j","owner":"mariadb-corporation","description":"MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases. MariaDB Connector/J is LGPL licensed.","archived":false,"fork":false,"pushed_at":"2024-10-28T13:10:21.000Z","size":19503,"stargazers_count":336,"open_issues_count":5,"forks_count":226,"subscribers_count":71,"default_branch":"master","last_synced_at":"2024-10-29T16:45:03.461Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mariadb-corporation.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-01-30T13:12:38.000Z","updated_at":"2024-10-28T13:10:25.000Z","dependencies_parsed_at":"2023-10-23T11:28:03.294Z","dependency_job_id":"cf7ddafe-a414-459f-9a26-6a66c1b9ef98","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j","commit_stats":{"total_commits":3011,"total_committers":104,"mean_commits":"28.951923076923077","dds":"0.44304217867817997","last_synced_commit":"2eacf8a0b88f6316a412e552b7fc3edd3671bbba"},"previous_names":["mariadb/mariadb-connector-j"],"tags_count":113,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mariadb-corporation","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229321871,"owners_count":18054955,"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":"mariadb-corporation","name":"MariaDB","uuid":"5877084","kind":"organization","description":"","email":null,"website":"https://mariadb.com","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/5877084?v=4","repositories_count":71,"last_synced_at":"2023-04-10T00:13:08.699Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/mariadb-corporation","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-02T16:34:09.668Z","updated_at":"2023-04-10T00:13:08.936Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mariadb-corporation","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mariadb-corporation/repositories"},"tags":[{"name":"3.5.0","sha":"8be57f3b4bd0b1112cf871d9426beda6919b3bb7","kind":"commit","published_at":"2024-10-21T16:39:36.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.5.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.5.0/manifests"},{"name":"3.4.1","sha":"903ff6f1847e6806cea86c30242e6f617206a210","kind":"commit","published_at":"2024-07-15T09:57:57.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.4.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.4.1/manifests"},{"name":"3.4.0","sha":"c19f608838fdcb18fa81cab8a607afdaa5131a58","kind":"commit","published_at":"2024-04-25T12:33:32.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.4.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.4.0/manifests"},{"name":"3.3.3","sha":"2eb246da205da899fd88238d1bc253f9809d9a2e","kind":"commit","published_at":"2024-02-08T14:46:16.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.3.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.3.3/manifests"},{"name":"2.7.12","sha":"175b47fa386c3a4acac827ae0a00214ef812c297","kind":"commit","published_at":"2024-02-08T10:08:06.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.12","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.12/manifests"},{"name":"3.3.2","sha":"f9018f5c18269790a265248ca057a02d4e5e8faa","kind":"commit","published_at":"2023-12-15T14:41:01.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.3.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.3.2/manifests"},{"name":"3.3.1","sha":"4acb834a05f13ca0e58390cff813cc3954040ad9","kind":"commit","published_at":"2023-11-26T17:54:22.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.3.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.3.1/manifests"},{"name":"2.7.11","sha":"12369dfc001e48b90ea92dac8a30612bac685996","kind":"commit","published_at":"2023-11-06T14:54:34.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.11","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.11/manifests"},{"name":"3.3.0","sha":"d9b36887da75cc23b39d3773436450b2e7ebedaf","kind":"commit","published_at":"2023-11-06T14:51:04.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.3.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.3.0/manifests"},{"name":"3.2.0","sha":"7ddcd9eea4cd4379cb84638b0a68776165f103dc","kind":"commit","published_at":"2023-08-02T07:14:09.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.2.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.2.0/manifests"},{"name":"3.0.11","sha":"760a004e1b2f530a0f4f46ae8c64cb603ec3afe1","kind":"commit","published_at":"2023-08-01T13:12:01.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.11","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.11/manifests"},{"name":"2.7.10","sha":"28f1269b0df58cd87fbb4fa3e44021e440e34c2f","kind":"commit","published_at":"2023-08-01T12:43:01.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.10","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.10/manifests"},{"name":"3.1.4","sha":"745ef7b287363745ae4b11d44df2713d3c9b3d8d","kind":"commit","published_at":"2023-04-26T14:31:12.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.1.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.1.4/manifests"},{"name":"2.7.9","sha":"3021f01f1a8b28558f4083ec6b3feb6dea3ee665","kind":"commit","published_at":"2023-03-16T12:39:31.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.9","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.9/manifests"},{"name":"3.1.3","sha":"d541afd6af963d931dd1a86adfb1cbcb1a0af10c","kind":"commit","published_at":"2023-03-16T10:31:14.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.1.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.1.3/manifests"},{"name":"3.1.2","sha":"69ab3b208cd96162faac30f6a1472df83ee6e78a","kind":"commit","published_at":"2023-01-19T16:48:37.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.1.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.1.2/manifests"},{"name":"2.7.8","sha":"16d49d752abe4743365ef250ac7b718b74355a37","kind":"commit","published_at":"2023-01-19T16:24:15.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.8","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.8/manifests"},{"name":"3.1.1","sha":"8ae12920193f6aeda01dc43bbdeca6582b29150e","kind":"commit","published_at":"2023-01-09T14:59:59.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.1.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.1.1/manifests"},{"name":"3.0.10","sha":"a206124411c391f052a5643ab9120e6be7dc7b5f","kind":"commit","published_at":"2023-01-09T14:19:04.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.10","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.10/manifests"},{"name":"3.0.9","sha":"a42cde1935a10bbdcd100eff8244b07a322421f2","kind":"commit","published_at":"2022-11-07T13:09:54.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.9","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.9/manifests"},{"name":"2.7.7","sha":"c5686351c662ae68dff8418ff851cf1bf36848a5","kind":"commit","published_at":"2022-11-07T13:01:04.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.7","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.7/manifests"},{"name":"3.0.8","sha":"a3fdec6b7ac0d7279c87bd3b7cfba1bf426d3f64","kind":"commit","published_at":"2022-09-09T09:39:48.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.8","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.8/manifests"},{"name":"3.0.7","sha":"63317349085f3c503779dcb80d0e0630c15af9a5","kind":"commit","published_at":"2022-07-26T22:01:16.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.7","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.7/manifests"},{"name":"2.7.6","sha":"8ee718d8132fc1644e33bc82998140a7008becfb","kind":"commit","published_at":"2022-06-24T12:23:05.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.6","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.6/manifests"},{"name":"3.0.6","sha":"8b32329c49c2721d15f16512ea2840be83f61ec6","kind":"commit","published_at":"2022-06-24T12:19:34.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.6","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.6/manifests"},{"name":"3.0.5","sha":"62252ae8a6e0b9f1b4d4b250e3b58b7b5b931dd2","kind":"commit","published_at":"2022-05-19T09:34:00.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.5","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.5/manifests"},{"name":"3.0.4","sha":"cc0aa96cf36fb6750bb12e6f1ab0f97283b1f2a0","kind":"commit","published_at":"2022-03-22T09:59:35.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.4/manifests"},{"name":"2.7.5","sha":"2f455846f117ab9456929657f129ca44c5a5fae6","kind":"commit","published_at":"2022-01-14T10:21:52.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.5","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.5/manifests"},{"name":"3.0.3","sha":"c8152e157925f14fba5d2cf774919e6733a53b06","kind":"commit","published_at":"2022-01-10T15:02:14.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.3/manifests"},{"name":"3.0.2-rc","sha":"7eb2a4b698abd5ba5a98179c03d687ad9babb35f","kind":"commit","published_at":"2021-08-31T16:16:19.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.2-rc","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.2-rc","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.2-rc","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.2-rc/manifests"},{"name":"3.0.1-beta","sha":"e9433f0f59f2a0db748ceb5e742bb5ede1e4b0ab","kind":"commit","published_at":"2021-07-29T14:45:49.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.1-beta","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.1-beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.1-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.1-beta/manifests"},{"name":"2.7.4","sha":"0b78458f86960e70db9b3956084d4675f842aac4","kind":"commit","published_at":"2021-07-29T14:06:44.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.4/manifests"},{"name":"2.7.3","sha":"eef9e9b81ac5b3a6bf19b193e769a0102945691f","kind":"commit","published_at":"2021-05-12T16:03:39.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.3/manifests"},{"name":"3.0.0-alpha","sha":"6f7aba384d47f97c4e4e98b19f677415c7084db7","kind":"commit","published_at":"2021-05-06T12:29:10.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/3.0.0-alpha","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/3.0.0-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.0-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/3.0.0-alpha/manifests"},{"name":"2.7.2","sha":"9536ba7afbb29226be7f89724178f4e548ad01be","kind":"commit","published_at":"2021-01-29T14:52:33.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.2/manifests"},{"name":"1.7.6","sha":"a20bf9f4aca33bffd6713bcbfb730432e55d7bb8","kind":"commit","published_at":"2020-12-10T15:41:51.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.7.6","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.7.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.6/manifests"},{"name":"1.7.5","sha":"ed6d41467e921284e7fd2b0da2820eb3b2449df6","kind":"commit","published_at":"2020-12-09T14:00:43.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.7.5","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.7.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.5/manifests"},{"name":"2.7.1","sha":"a01e7aaa418ccbabb36cf797a05596eee720a347","kind":"commit","published_at":"2020-11-23T15:21:17.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.1/manifests"},{"name":"2.7.0","sha":"550a8ed5882fc01bdfdc596bfa909391717e6075","kind":"commit","published_at":"2020-09-24T13:00:41.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.7.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.7.0/manifests"},{"name":"2.6.2","sha":"a5c414d35813c683fdbbb46e9d2ad6149315c88e","kind":"commit","published_at":"2020-07-23T14:10:15.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.6.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.6.2/manifests"},{"name":"2.6.1","sha":"d60ea327c54500a821da465288960b34bf201743","kind":"commit","published_at":"2020-06-23T09:08:10.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.6.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.6.1/manifests"},{"name":"2.6.0","sha":"3bc66153b51aca188afc50ff35a0123f16c099ed","kind":"commit","published_at":"2020-03-19T16:06:22.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.6.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.6.0/manifests"},{"name":"2.5.4","sha":"12d22ecc962e410d9c5f3bc2650fc43a7c8d1886","kind":"commit","published_at":"2020-01-27T11:15:20.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.5.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.5.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.5.4/manifests"},{"name":"2.5.3","sha":"c95f2325b24e08069962cf33d35eac1ddf50a0f0","kind":"commit","published_at":"2020-01-07T14:23:56.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.5.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.5.3/manifests"},{"name":"2.5.2","sha":"1eab311b60c418f7cc218aab4c8789f9850ce996","kind":"commit","published_at":"2019-11-22T14:42:12.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.5.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.5.2/manifests"},{"name":"2.5.1","sha":"cae12e79fe397ec08e317bbf9aa671361b4ecbfd","kind":"commit","published_at":"2019-10-15T14:56:02.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.5.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.5.1/manifests"},{"name":"2.5.0","sha":"5128ae38d0d847eea322f86cf8c42a0d3727564b","kind":"commit","published_at":"2019-10-02T12:46:41.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.5.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.5.0/manifests"},{"name":"2.4.4","sha":"ece873b6b17b4b375f63be1afdf840fd3d7a05cf","kind":"commit","published_at":"2019-09-13T13:01:31.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.4.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.4.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.4.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.4.4/manifests"},{"name":"2.4.3","sha":"af9d9cc177e2b61a44f71be96476b2d8ab3cb03a","kind":"commit","published_at":"2019-08-02T16:41:21.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.4.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.4.3/manifests"},{"name":"2.4.2","sha":"c160500cc2e7eb423c37cc72f2c95151e67954f5","kind":"commit","published_at":"2019-06-17T12:27:07.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.4.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.4.2/manifests"},{"name":"2.4.1","sha":"d148c7cd347c4680617be65d9e511b289d38a30b","kind":"tag","published_at":"2019-03-15T08:42:56.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.4.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.4.1/manifests"},{"name":"1.8.0","sha":"24d204fb170a2b9fa91f6d6c76f80fddbdc93490","kind":"commit","published_at":"2019-02-07T21:54:57.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.8.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.8.0/manifests"},{"name":"2.4.0","sha":"5811d2683f3f6711593eef17cef54ba378f122e7","kind":"commit","published_at":"2019-01-28T16:00:20.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.4.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.4.0/manifests"},{"name":"2.3.0","sha":"0badaece614aae8c185a00c6d2c3b63643377037","kind":"commit","published_at":"2018-09-06T13:03:10.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.3.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.3.0/manifests"},{"name":"2.2.6","sha":"f6742ed0851ba94c97b8ab3699318647e72000c6","kind":"commit","published_at":"2018-07-19T15:45:11.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.2.6","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.6/manifests"},{"name":"2.2.5","sha":"e699a69b84729e429b3b5147011013293bb86c5f","kind":"commit","published_at":"2018-05-28T19:21:59.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.2.5","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.5/manifests"},{"name":"1.7.4","sha":"bd83787d12bf970a0350dc21b9e51764473cfa2f","kind":"commit","published_at":"2018-05-28T15:53:31.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.7.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.7.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.4/manifests"},{"name":"2.2.4","sha":"2a5d9ddf2f7a94ab0758cb074094060edbe4389d","kind":"commit","published_at":"2018-05-04T17:36:59.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.2.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.4/manifests"},{"name":"1.7.3","sha":"6c6be83e377c3906d94e7ce177545f31c813b24a","kind":"commit","published_at":"2018-03-08T17:07:18.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.7.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.7.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.3/manifests"},{"name":"2.2.3","sha":"ac7eba3003ff4e6bc7ee0c4d51780ffb541ad6f2","kind":"commit","published_at":"2018-03-08T16:42:13.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.2.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.3/manifests"},{"name":"2.2.2","sha":"8107decd58707067be43cfd9bb4c00ef571d71ac","kind":"commit","published_at":"2018-02-20T00:19:25.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.2.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.2/manifests"},{"name":"1.7.2","sha":"accf9c86d8e14e302a57bb3fead1146b20cb626a","kind":"commit","published_at":"2018-02-19T23:50:44.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.7.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.7.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.2/manifests"},{"name":"2.2.1","sha":"386819936ffad08d0ac213413c7a15c7b9a18dad","kind":"commit","published_at":"2017-12-22T11:38:36.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.2.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.1/manifests"},{"name":"1.7.1","sha":"88040b4b1d76cd736085f7f1bcdc4dc5d3365f36","kind":"commit","published_at":"2017-12-22T11:31:57.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.7.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.1/manifests"},{"name":"2.2.0","sha":"4c97512c72b0cc990ce2a641073298f973f1ab86","kind":"commit","published_at":"2017-11-08T01:58:45.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.2.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.2.0/manifests"},{"name":"1.7.0","sha":"843fa656877f35860ce13dd3a320e5008064884a","kind":"commit","published_at":"2017-11-08T01:08:02.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.7.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.7.0/manifests"},{"name":"2.1.2","sha":"4cc63b937d6a5194210e757a8590c726a8ba1850","kind":"commit","published_at":"2017-09-24T21:15:06.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.1.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.1.2/manifests"},{"name":"1.6.5","sha":"6cade25f74e96ed94eb32c2ce51a5aa76735b53a","kind":"commit","published_at":"2017-09-24T19:34:22.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.6.5","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.6.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.5/manifests"},{"name":"2.1.1","sha":"a2687da98f859041febc0743d2f6c94552723527","kind":"commit","published_at":"2017-09-05T14:23:26.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.1.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.1.1/manifests"},{"name":"1.6.4","sha":"4e0b97efd09ce9cdd372749bb5717b619c877702","kind":"commit","published_at":"2017-09-05T13:43:06.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.6.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.6.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.4/manifests"},{"name":"2.1.0","sha":"a3c6b44680a8c5399b591fbeda88a37de26e5dd5","kind":"commit","published_at":"2017-07-29T11:12:42.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.1.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.1.0/manifests"},{"name":"1.6.3","sha":"64eb1679cd8fb137d78e91a522559859c9841d5c","kind":"commit","published_at":"2017-07-29T09:15:06.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.6.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.6.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.3/manifests"},{"name":"2.0.3","sha":"62a79ed25dc2f3cd73336d94b13ef890e1c7760d","kind":"commit","published_at":"2017-06-27T12:33:31.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.0.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.0.3/manifests"},{"name":"1.6.2","sha":"2774a5ae4ced4d909a420a4af2c9888d9bd12daf","kind":"commit","published_at":"2017-06-27T10:15:00.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.6.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.2/manifests"},{"name":"2.0.2","sha":"8123e1d572ecc680bb93ace071fca336637a60a0","kind":"commit","published_at":"2017-06-05T21:03:56.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.0.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.0.2/manifests"},{"name":"1.6.1","sha":"bb6c2355305c95651abdddcb050313bd09fb7809","kind":"commit","published_at":"2017-06-05T20:11:41.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.6.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.1/manifests"},{"name":"2.0.1","sha":"c8ffd8440e4eb2cb5d79db3976a82085d5b1e2b1","kind":"commit","published_at":"2017-05-10T13:15:25.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.0.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.0.1/manifests"},{"name":"1.6.0","sha":"aa9534714add46010575b769ceda0351be1a14e9","kind":"commit","published_at":"2017-05-10T12:30:36.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.6.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.6.0/manifests"},{"name":"2.0.0-RC","sha":"c01b00e087874d37b96506c2ee8b39c15c06b4b7","kind":"commit","published_at":"2017-04-20T07:24:45.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/2.0.0-RC","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/2.0.0-RC","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.0.0-RC","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/2.0.0-RC/manifests"},{"name":"1.5.9","sha":"9333aedd2f98da96b1848769329f37009d6298ba","kind":"commit","published_at":"2017-03-08T22:30:51.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.5.9","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.5.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.9/manifests"},{"name":"1.5.8","sha":"6b645be9314dc1b28c6108421052f7cdefc7d86f","kind":"commit","published_at":"2017-02-10T15:49:38.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.5.8","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.5.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.8/manifests"},{"name":"1.5.7","sha":"f5dc9eafabfb7d8db9083e6d3e6b7659f85cf260","kind":"commit","published_at":"2017-01-12T14:23:41.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.5.7","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.5.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.7/manifests"},{"name":"1.5.6","sha":"680f0b41941ad4af4fff7a82d186bf256d777c37","kind":"commit","published_at":"2016-12-21T22:27:46.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.5.6","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.5.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.6/manifests"},{"name":"1.5.5","sha":"28d17a3f3cee2c2424d92e72b48f9b07a669f5d6","kind":"commit","published_at":"2016-11-07T22:35:29.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.5.5","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.5.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.5/manifests"},{"name":"1.1.10","sha":"3a1236787ce8a7773bb4fbe8bb5736c8322bc30b","kind":"commit","published_at":"2016-11-01T17:28:07.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.1.10","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.1.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.1.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.1.10/manifests"},{"name":"1.5.4","sha":"7d78ca503dd003541919cfc066d274ac2d99466b","kind":"commit","published_at":"2016-10-09T22:40:11.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.5.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.5.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.4/manifests"},{"name":"1.5.3","sha":"ed1c4f5235c5c452bfd79aa50523c3deff303c65","kind":"commit","published_at":"2016-10-02T23:12:17.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.5.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.3/manifests"},{"name":"1.5.2","sha":"889863a5be74818cc5e736f84065ce166abe6ac7","kind":"commit","published_at":"2016-08-30T23:52:20.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.5.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.2/manifests"},{"name":"1.5.1-RC","sha":"8bcfb76578fbe2c26b0b69eb4f5f6e1a138703de","kind":"commit","published_at":"2016-08-15T23:11:32.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.5.1-RC","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.5.1-RC","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.1-RC","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.1-RC/manifests"},{"name":"1.5.0-RC1","sha":"41910e840323b7b349dc85c0f18e6f0ba89fa9e1","kind":"commit","published_at":"2016-07-28T17:21:32.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.5.0-RC1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.5.0-RC1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.0-RC1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.5.0-RC1/manifests"},{"name":"1.4.6","sha":"67aaeb1cd42bca8c61656f886114119ab3938d12","kind":"commit","published_at":"2016-06-13T13:50:35.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.4.6","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.4.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.6/manifests"},{"name":"1.4.5","sha":"4acf95d9ab8feb83db3d94a4b7274b0b79bf550b","kind":"commit","published_at":"2016-05-18T15:43:15.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.4.5","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.4.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.5/manifests"},{"name":"1.4.4","sha":"da49b68d390498054b503d63e416192ee351bb5b","kind":"commit","published_at":"2016-04-29T16:54:22.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.4.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.4.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.4/manifests"},{"name":"1.4.3","sha":"adb527ab94c47d9d0dc0d2ca1dc8ad362c6f8b1a","kind":"commit","published_at":"2016-04-22T12:33:04.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.4.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.3/manifests"},{"name":"1.4.2","sha":"09af75733410e9faa256a8879ac630260c406417","kind":"commit","published_at":"2016-04-08T16:13:59.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.4.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.2/manifests"},{"name":"1.4.1","sha":"938838dda280cd95a543d86d17e962c833f08226","kind":"commit","published_at":"2016-04-07T14:45:38.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.4.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.1/manifests"},{"name":"1.4.0","sha":"ba2429055d5ea0a0638f6ff60d80c22404f133eb","kind":"commit","published_at":"2016-03-31T11:52:59.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.4.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.4.0/manifests"},{"name":"1.3.7","sha":"ed02acffba1d8eadb2a24f1bc1b5f7b4294f0a6a","kind":"commit","published_at":"2016-03-21T21:16:44.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.7","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.7/manifests"},{"name":"1.3.6","sha":"2657f166453f3b21866b5a12c2e9042c7522aeb8","kind":"commit","published_at":"2016-02-22T00:46:27.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.6","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.6/manifests"},{"name":"1.3.5","sha":"78f59b6452908e9eb66b029f84de4a4eeec530ca","kind":"commit","published_at":"2016-02-04T09:14:39.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.5","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.5/manifests"},{"name":"1.3.4","sha":"810ebf70eddfb954dc59cab353454470343ad419","kind":"commit","published_at":"2016-01-10T09:18:59.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.4","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.4/manifests"},{"name":"1.3.3","sha":"ac495c2c8a872f33f4df7f67a55e71cb09264347","kind":"commit","published_at":"2015-12-07T10:26:20.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.3/manifests"},{"name":"1.3.2","sha":"dc509c2bd3d149c5ea41424cbe564b4d8a6f0d9c","kind":"commit","published_at":"2015-11-23T09:13:30.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.2/manifests"},{"name":"1.3.1","sha":"7900eb960daa309a56f6c08fd9c432a82a4ba86f","kind":"commit","published_at":"2015-11-18T10:30:02.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.1/manifests"},{"name":"1.3.0","sha":"b605d1b3f3a279d6feb768cb414546e2f207569d","kind":"commit","published_at":"2015-11-13T13:01:25.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.0/manifests"},{"name":"1.3.0-beta-3","sha":"a87ac120e955d0093f04aa67f0eeeba890fe1501","kind":"commit","published_at":"2015-11-02T17:27:41.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.0-beta-3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.0-beta-3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.0-beta-3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.0-beta-3/manifests"},{"name":"1.2.3","sha":"f27820cd75f6ef97d2348c08f5de48168ab665a9","kind":"commit","published_at":"2015-10-05T18:53:29.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.2.3","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.2.3/manifests"},{"name":"1.3.0-beta-2","sha":"4bd080d9d484fe36261779d237e17c51b915e6ce","kind":"commit","published_at":"2015-09-29T21:39:40.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.0-beta-2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.0-beta-2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.0-beta-2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.0-beta-2/manifests"},{"name":"1.3.0-beta-1","sha":"38cb5c1495c12fe6502216b8aaaf1609e7d6c08e","kind":"commit","published_at":"2015-09-29T18:44:23.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.3.0-beta-1","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.3.0-beta-1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.0-beta-1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.3.0-beta-1/manifests"},{"name":"1.2.2","sha":"b348bec2ca3db700a479e2f87ce61656a5d94460","kind":"commit","published_at":"2015-09-02T15:46:47.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.2.2","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.2.2/manifests"},{"name":"1.2.0","sha":"ab3eb086ff0a2678fc357a6e95a517f2e2fa8056","kind":"commit","published_at":"2015-07-17T16:59:14.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.2.0","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.2.0/manifests"},{"name":"1.1.9","sha":"fae71ea2dbbd9cee5bf637d954a4360f811223f4","kind":"commit","published_at":"2015-06-04T11:20:03.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.1.9","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.1.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.1.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.1.9/manifests"},{"name":"1.1.8","sha":"16842b2ab5059d2661b973800068040c2f29d97d","kind":"commit","published_at":"2015-01-30T14:52:03.000Z","download_url":"https://codeload.github.com/mariadb-corporation/mariadb-connector-j/tar.gz/1.1.8","html_url":"https://github.com/mariadb-corporation/mariadb-connector-j/releases/tag/1.1.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.1.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mariadb-corporation%2Fmariadb-connector-j/tags/1.1.8/manifests"}]},"repo_metadata_updated_at":"2024-12-12T02:38:13.215Z","dependent_packages_count":658,"downloads":null,"downloads_period":null,"dependent_repos_count":22867,"rankings":{"downloads":null,"dependent_repos_count":0.0398442270920722,"dependent_packages_count":0.11272512488862638,"stargazers_count":19.39833214868504,"forks_count":13.530018320335572,"docker_downloads_count":0.14776401806004666,"average":6.645736767812271},"purl":"pkg:maven/org.mariadb.jdbc/mariadb-java-client","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/maven/org.mariadb.jdbc:mariadb-java-client","docker_dependents_count":1899,"docker_downloads_count":740022628,"usage_url":"https://repos.ecosyste.ms/usage/maven/org.mariadb.jdbc:mariadb-java-client","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/maven/org.mariadb.jdbc:mariadb-java-client/dependencies","status":null,"funding_links":[],"critical":true,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.mariadb.jdbc:mariadb-java-client/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.mariadb.jdbc:mariadb-java-client/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.mariadb.jdbc:mariadb-java-client/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.mariadb.jdbc:mariadb-java-client/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":170,"unique_repositories_count_past_30_days":4,"recent_issues":[{"uuid":"5343732959","node_id":"PR_kwDORvJjTc8AAAABCJLqzA","number":74,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 22 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T03:06:38.000Z","updated_at":"2026-09-04T05:02:30.047Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":22,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.10","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.0.3","new_version":"13.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.8"},{"name":"org.apache.pdfbox:jbig2-imageio","old_version":"3.0.4","new_version":"3.0.5"},{"name":"com.twelvemonkeys.imageio:imageio-jpeg","old_version":"3.13.1","new_version":"3.14.0"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"8.1.1","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.23.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.6","new_version":"4.0.9"},{"name":"org.freemarker:freemarker","old_version":"2.3.34","new_version":"2.3.35"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.3","new_version":"3.2.4","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.1.1","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.6.Final","new_version":"7.4.7.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.61.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.7.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 17 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.10` |\n| org.flywaydb:flyway-mysql | `12.0.3` | `13.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.8` |\n| org.apache.pdfbox:jbig2-imageio | `3.0.4` | `3.0.5` |\n| com.twelvemonkeys.imageio:imageio-jpeg | `3.13.1` | `3.14.0` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `8.1.1` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.23.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.1.0` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.6` | `4.0.9` |\n| org.freemarker:freemarker | `2.3.34` | `2.3.35` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.2.2` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.3` | `3.2.4` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.1.1` |\n| org.hibernate.orm | `7.2.6.Final` | `7.4.7.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.61.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.7.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.10\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.10\"\u003e3.5.10\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.9...3.5.10\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1333 - Add maxAllowedPacket connection option (send/receive limit)\u003c/li\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1330 - add infer test to CI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1307 - Connection.setReadOnly(true) still allows DML statements to execute\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1327 - Align SSL hostname verification with TLS libraries (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1331 - trustStore-configured TLS connections defer certificate-chain/identity validation instead of validating\nup front (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1340 - SQL injection via unescaped identifiers in updatable ResultSet generated statements (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1341 - MariaDbPoolDataSource.getConnection(user, password) ignores the user argument when the pool's own\npassword is supplied (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1328 - restrictedAuth allowlist is matched with substring contains() instead of equality (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1338 - Validate length-encoded integers fit a non-negative int before use as a length (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1336 - CONJ-1282 regression: TLS connection fails when JDBC hostname is an absolute FQDN ending with a trailing\ndot (report by Shaswata, thanks to Pepo48 for PR)\u003c/li\u003e\n\u003cli\u003eCONJ-1335 - getGeneratedKeys() throws \u0026quot;integer overflow\u0026quot; after a batch insert when the auto-increment value exceeds\nInteger.MAX_VALUE, and returns bulk generated keys out of batch order\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.9\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.9\"\u003e3.5.9\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.8...3.5.9\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1223 - cache TLS trust/key managers across connections to reduce SSL connection cost\u003c/li\u003e\n\u003cli\u003eCONJ-1314 - add SPI for interactive dialog (PAM) authentication callback\u003c/li\u003e\n\u003cli\u003eCONJ-1311 - add dedicated option \u003ccode\u003euseIpForKillQuery\u003c/code\u003e for query cancellation\u003c/li\u003e\n\u003cli\u003eCONJ-1310 - Add full native image support and CI coverage\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1320 - PAM (dialog) authentication must require a secure connection (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1319 - Use constant-time comparison when validating the server certificate fingerprint (report by jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - enforce \u003ccode\u003eallowLocalInfile=false\u003c/code\u003e on the server's local-infile request, so a malicious server cannot read a client file despite the option being disabled\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- 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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.10\"\u003e3.5.10\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.9...3.5.10\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1333 - Add maxAllowedPacket connection option (send/receive limit)\u003c/li\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1330 - add infer test to CI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1307 - Connection.setReadOnly(true) still allows DML statements to execute\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1327 - Align SSL hostname verification with TLS libraries (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1331 - trustStore-configured TLS connections defer certificate-chain/identity validation instead of validating\nup front (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1340 - SQL injection via unescaped identifiers in updatable ResultSet generated statements (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1341 - MariaDbPoolDataSource.getConnection(user, password) ignores the user argument when the pool's own\npassword is supplied (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1328 - restrictedAuth allowlist is matched with substring contains() instead of equality (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1338 - Validate length-encoded integers fit a non-negative int before use as a length (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1336 - CONJ-1282 regression: TLS connection fails when JDBC hostname is an absolute FQDN ending with a trailing\ndot (report by Shaswata, thanks to Pepo48 for PR)\u003c/li\u003e\n\u003cli\u003eCONJ-1335 - getGeneratedKeys() throws \u0026quot;integer overflow\u0026quot; after a batch insert when the auto-increment value exceeds\nInteger.MAX_VALUE, and returns bulk generated keys out of batch order\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.4.4\"\u003e3.4.4\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.4.3...3.4.4\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eNotable Changes\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/6164678e83aa9d203939d5bec73bd4571cbec8a2\"\u003e\u003ccode\u003e6164678\u003c/code\u003e\u003c/a\u003e [misc] update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/6f58858707c3d59881b171c40ec5ddd2773b0642\"\u003e\u003ccode\u003e6f58858\u003c/code\u003e\u003c/a\u003e [CONJ-1335] getGeneratedKeys() throws SQLDataException \u0026quot;integer overflow\u0026quot; aft...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/9f06db76c8502fa952dcd4de6ebe46cfe3f6ead9\"\u003e\u003ccode\u003e9f06db7\u003c/code\u003e\u003c/a\u003e [misc] CI stability improvement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/99aa9e2e7b84ecf4edec20beeac37752066599c8\"\u003e\u003ccode\u003e99aa9e2\u003c/code\u003e\u003c/a\u003e [CONJ-1336] correction follow up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/28a1550357fd3773a1cda68d545e79573c26bc8a\"\u003e\u003ccode\u003e28a1550\u003c/code\u003e\u003c/a\u003e [CONJ-1336] strip trailing dot from hostname before SNI and hostname verifica...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/b2b3f1beb8a5cb83f48e68ed7b912c637da0634e\"\u003e\u003ccode\u003eb2b3f1b\u003c/code\u003e\u003c/a\u003e [misc] limit authentication switch requests to 10 per connection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26ca60ab4a6d58905d8beef98428bf04d6cd4a5f\"\u003e\u003ccode\u003e26ca60a\u003c/code\u003e\u003c/a\u003e [misc] bound the whole connection phase by connectTimeout\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/15e08ff54fd0247a5491fe2695562d36b8e7f7c2\"\u003e\u003ccode\u003e15e08ff\u003c/code\u003e\u003c/a\u003e [CONJ-1337] Limit parsec authentication PBKDF2 iteration factor to the connec...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d3c4a726d7cfcc0fa10ee4cdcca423a7d88c67ab\"\u003e\u003ccode\u003ed3c4a72\u003c/code\u003e\u003c/a\u003e bump 3.5.10 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d85e05f4dc010ce40df548cf908da6bbc2640903\"\u003e\u003ccode\u003ed85e05f\u003c/code\u003e\u003c/a\u003e [CONJ-1342] socketFactory option allows loading arbitrary bytecode via jar: U...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.0.3 to 13.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.8\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.8\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.8\n\nUpdates `org.apache.pdfbox:jbig2-imageio` from 3.0.4 to 3.0.5\n\nUpdates `com.twelvemonkeys.imageio:imageio-jpeg` from 3.13.1 to 3.14.0\n\nUpdates `com.twelvemonkeys.imageio:imageio-tiff` from 3.13.1 to 3.14.0\n\nUpdates `com.twelvemonkeys.imageio:imageio-webp` from 3.13.1 to 3.14.0\n\nUpdates `com.twelvemonkeys.imageio:imageio-bmp` from 3.13.1 to 3.14.0\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 8.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v8.1.1\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eio\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereadLongBigEndian returned only the low 32 bits (\u003ca href=\"https://github.com/junrar/junrar/commits/efdbd79\"\u003eefdbd79\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003erar3\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eread the Unix owners sub-block names within its bounds (\u003ca href=\"https://github.com/junrar/junrar/commits/27d7755\"\u003e27d7755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebound the remaining header reads and keep reading past a broken header (\u003ca href=\"https://github.com/junrar/junrar/commits/8301bcb\"\u003e8301bcb\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/12\"\u003e#12\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebound the extended-time reads left unguarded by v7.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/da5ef82\"\u003eda5ef82\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/12\"\u003e#12\u003c/a\u003e \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/86\"\u003e#86\u003c/a\u003e \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/87\"\u003e#87\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ekeep extracting when an entry name has no Path on this JVM (\u003ca href=\"https://github.com/junrar/junrar/commits/510b792\"\u003e510b792\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔄️ Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esatisfy spotless in the changed method (\u003ca href=\"https://github.com/junrar/junrar/commits/6557837\"\u003e6557837\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereproduce the unrepresentable name without a locale (\u003ca href=\"https://github.com/junrar/junrar/commits/06aefef\"\u003e06aefef\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle from 9.6.1 to 9.7.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/1de660e\"\u003e1de660e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/d79e3a5\"\u003ed79e3a5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.diffplug.spotless from 8.9.0 to 8.10.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/8787a21\"\u003e8787a21\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/facf4d5\"\u003efacf4d5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump io.github.ben-manes.versions.settings (\u003ca href=\"https://github.com/junrar/junrar/commits/a17162c\"\u003ea17162c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 10 to 11 (\u003ca href=\"https://github.com/junrar/junrar/commits/c866a6f\"\u003ec866a6f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.bouncycastle:bcprov-jdk18on from 1.85 to 1.85.2 (\u003ca href=\"https://github.com/junrar/junrar/commits/8017539\"\u003e8017539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 6.2.0 to 6.3.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/1397fab\"\u003e1397fab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.58.0 to 0.59.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/a16c9f4\"\u003ea16c9f4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.54.0 to 0.58.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/dcb0afb\"\u003edcb0afb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.diffplug.spotless from 8.8.0 to 8.9.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5829d84\"\u003e5829d84\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 6 to 6.2.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/0b3f663\"\u003e0b3f663\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupdate svu install (\u003ca href=\"https://github.com/junrar/junrar/commits/09ad661\"\u003e09ad661\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nAndre Brait, Gauthier, Gauthier Roebroeck, Nexory, Sean R\u003c/p\u003e\n\u003ch2\u003eRelease v8.1.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v8.1.0...v8.1.1\"\u003e8.1.1\u003c/a\u003e (2026-08-31)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eio\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereadLongBigEndian returned only the low 32 bits (\u003ca href=\"https://github.com/junrar/junrar/commits/efdbd79\"\u003eefdbd79\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003erar3\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eread the Unix owners sub-block names within its bounds (\u003ca href=\"https://github.com/junrar/junrar/commits/27d7755\"\u003e27d7755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebound the remaining header reads and keep reading past a broken header (\u003ca href=\"https://github.com/junrar/junrar/commits/8301bcb\"\u003e8301bcb\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/12\"\u003e#12\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebound the extended-time reads left unguarded by v7.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/da5ef82\"\u003eda5ef82\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/12\"\u003e#12\u003c/a\u003e \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/86\"\u003e#86\u003c/a\u003e \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/87\"\u003e#87\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ekeep extracting when an entry name has no Path on this JVM (\u003ca href=\"https://github.com/junrar/junrar/commits/510b792\"\u003e510b792\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔄️ Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esatisfy spotless in the changed method (\u003ca href=\"https://github.com/junrar/junrar/commits/6557837\"\u003e6557837\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereproduce the unrepresentable name without a locale (\u003ca href=\"https://github.com/junrar/junrar/commits/06aefef\"\u003e06aefef\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle from 9.6.1 to 9.7.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/1de660e\"\u003e1de660e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/d79e3a5\"\u003ed79e3a5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.diffplug.spotless from 8.9.0 to 8.10.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/8787a21\"\u003e8787a21\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/facf4d5\"\u003efacf4d5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump io.github.ben-manes.versions.settings (\u003ca href=\"https://github.com/junrar/junrar/commits/a17162c\"\u003ea17162c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 10 to 11 (\u003ca href=\"https://github.com/junrar/junrar/commits/c866a6f\"\u003ec866a6f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.bouncycastle:bcprov-jdk18on from 1.85 to 1.85.2 (\u003ca href=\"https://github.com/junrar/junrar/commits/8017539\"\u003e8017539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 6.2.0 to 6.3.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/1397fab\"\u003e1397fab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.58.0 to 0.59.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/a16c9f4\"\u003ea16c9f4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.54.0 to 0.58.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/dcb0afb\"\u003edcb0afb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.diffplug.spotless from 8.8.0 to 8.9.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5829d84\"\u003e5829d84\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 6 to 6.2.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/0b3f663\"\u003e0b3f663\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupdate svu install (\u003ca href=\"https://github.com/junrar/junrar/commits/09ad661\"\u003e09ad661\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v8.0.0...v8.1.0\"\u003e8.1.0\u003c/a\u003e (2026-08-03)\u003c/h1\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ecrypt\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edecrypt legacy RAR 1.3/1.5/2.0 encrypted entries (\u003ca href=\"https://github.com/junrar/junrar/commits/5da2cb6\"\u003e5da2cb6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003erar14\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eextract entries spanning multiple RAR 1.4 volumes (\u003ca href=\"https://github.com/junrar/junrar/commits/a4b9591\"\u003ea4b9591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eextract RAR 1.4 entries with Checksum14 verification (\u003ca href=\"https://github.com/junrar/junrar/commits/11f1d23\"\u003e11f1d23\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eparse RAR 1.4 headers and list entries (\u003ca href=\"https://github.com/junrar/junrar/commits/7ac5a8c\"\u003e7ac5a8c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Fixes\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/junrar/junrar/commit/1de660e148790448591e1d4076b2c961a1bfbca5\"\u003e\u003ccode\u003e1de660e\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle from 9.6.1 to 9.7.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d79e3a59f0313d82f38a91fff6a5634ba28c00ea\"\u003e\u003ccode\u003ed79e3a5\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/8787a2146ccebbee8e138465d4917bcbd3e6de16\"\u003e\u003ccode\u003e8787a21\u003c/code\u003e\u003c/a\u003e build(deps): bump com.diffplug.spotless from 8.9.0 to 8.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/facf4d5f884b80abe1857d4870fd6493eb959072\"\u003e\u003ccode\u003efacf4d5\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a17162c6e2bafa02808ba891959020e31bcb79ac\"\u003e\u003ccode\u003ea17162c\u003c/code\u003e\u003c/a\u003e build(deps): bump io.github.ben-manes.versions.settings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/efdbd79ad22f142415936918f2f0f0478e1b0277\"\u003e\u003ccode\u003eefdbd79\u003c/code\u003e\u003c/a\u003e fix(io): readLongBigEndian returned only the low 32 bits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/65578378b0e63656e4948d2a22186fc99f536847\"\u003e\u003ccode\u003e6557837\u003c/code\u003e\u003c/a\u003e style: satisfy spotless in the changed method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/06aefef4769a55cc2ef0acfaebc649cfb6044f91\"\u003e\u003ccode\u003e06aefef\u003c/code\u003e\u003c/a\u003e test: reproduce the unrepresentable name without a locale\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/510b792d03c493a3ef4404aa44288ca419f0d972\"\u003e\u003ccode\u003e510b792\u003c/code\u003e\u003c/a\u003e fix: keep extracting when an entry name has no Path on this JVM\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/c866a6f1611afdef476ccbc41ca9d51931565f01\"\u003e\u003ccode\u003ec866a6f\u003c/code\u003e\u003c/a\u003e build(deps): bump EndBug/add-and-commit from 10 to 11\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v8.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.23.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup 1.23.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.23.2\u003c/strong\u003e is out now. This release focuses largely on bug fixes, specification correctness, and performance improvements.\u003c/p\u003e\n\u003cp\u003eIt brings closer alignment with the HTML, XML, URL, and form submission specifications; improves XML and W3C DOM conversion; and makes HTTP workloads more efficient through streamed request bodies and broader JDK \u003ccode\u003eHttpClient\u003c/code\u003e reuse.\u003c/p\u003e\n\u003cp\u003eThis version also includes new node insertion methods for \u003ccode\u003eElements\u003c/code\u003e, and DOM mutations now reject operations that would create a cycle.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://jsoup.org/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved consecutive \u003ccode\u003eStreamParser.selectFirst()\u003c/code\u003e calls during progressive parsing, so later matches are returned with their parsed contents when earlier selections had left them as parser lookahead. E.g., given \u003ccode\u003e\u0026lt;title\u0026gt;One\u0026lt;/title\u0026gt;\u0026lt;p id=hit\u0026gt;Full\u0026lt;/p\u0026gt;\u0026lt;p\u0026gt;Next\u0026lt;/p\u0026gt;\u003c/code\u003e, selecting \u003ccode\u003etitle\u003c/code\u003e and then \u003ccode\u003e#hit\u003c/code\u003e now advances the partial lookahead and returns \u003ccode\u003e\u0026lt;p id=\u0026quot;hit\u0026quot;\u0026gt;Full\u0026lt;/p\u0026gt;\u003c/code\u003e, rather than returning an empty \u003ccode\u003e\u0026lt;p id=\u0026quot;hit\u0026quot;\u0026gt;\u0026lt;/p\u0026gt;\u003c/code\u003e before its content is parsed. The updated readiness tracking follows StreamParser's normal emission order across implicit HTML structure and parser recovery. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2551\"\u003e#2551\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved XML parser performance and memory use for documents with many nested namespace declarations by recording namespace changes within each element scope. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2556\"\u003e#2556\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eW3CDom\u003c/code\u003e conversion performance for documents with many nested namespace declarations. The W3C converter now uses the same optimized namespace tracking as the XML parser. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2559\"\u003e#2559\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eW3CDom\u003c/code\u003e XML conversion to retain processing instructions, comments outside the root element, and CDATA sections, which were previously dropped or converted to text. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2572\"\u003e#2572\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDOM mutation methods, including child insertion and replacement, now reject operations that would create a cycle, such as making a node its own child or moving an ancestor beneath a descendant. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2552\"\u003e#2552\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eElements#before(Node)\u003c/code\u003e, \u003ccode\u003eafter(Node)\u003c/code\u003e, \u003ccode\u003eprepend(Node)\u003c/code\u003e, and \u003ccode\u003eappend(Node)\u003c/code\u003e to match the existing HTML string methods. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/953\"\u003e#953\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eLarge file-backed uploads through \u003ccode\u003eConnection.requestBodyStream(InputStream)\u003c/code\u003e now stream directly with the JDK \u003ccode\u003eHttpClient\u003c/code\u003e on Java 11+, rather than being loaded fully into memory first. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2576\"\u003e#2575\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eExtended Java 11+ HTTP client reuse from requests sharing a \u003ccode\u003eJsoup.newSession()\u003c/code\u003e to ordinary \u003ccode\u003eJsoup.connect()\u003c/code\u003e calls, reducing transport thread and connection setup churn under sustained request loads. Sessions with custom authentication or SSL contexts continue to use their own client. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2584\"\u003e#2584\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAligned the XML parser stack depth and lookups to the configured maximum, which now defaults to 512 for both HTML and XML. Use \u003ccode\u003eParser#setMaxDepth(int)\u003c/code\u003e to configure. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2570\"\u003e#2570\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003eW3CDom\u003c/code\u003e namespace conversion in several cases: \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2559\"\u003e#2559\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003eNamespace declarations and prefixed attributes now carry the correct namespace URI, so namespace-aware DOM lookups work as expected.\u003c/li\u003e\n\u003cli\u003eAttributes added after parsing, or included through subtree conversion, now use inherited prefix declarations.\u003c/li\u003e\n\u003cli\u003eNamespace declarations now apply regardless of attribute order, and an empty declaration shadows an inherited binding only within its scope.\u003c/li\u003e\n\u003cli\u003eWith namespace awareness disabled, inherited and undeclared prefixes now receive the declarations needed for XML serialization.\u003c/li\u003e\n\u003cli\u003eValid HTML names that are not XML QNames, such as \u003ccode\u003ea:b:c\u003c/code\u003e, are normalized. Attributes that still cannot be represented are skipped, and unrepresentable elements no longer change the surrounding tree.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eW3CDom\u003c/code\u003e conversion of programmatically created or renamed elements whose names can be represented in a jsoup HTML DOM but are not valid XML names, such as \u003ccode\u003e1abc\u003c/code\u003e. These names are now normalized (e.g. \u003ccode\u003e_1abc\u003c/code\u003e) instead of causing a \u003ccode\u003eNullPointerException\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2560\"\u003e#2560\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed XML doctype serialization when a system identifier contains a double quote, which could otherwise produce invalid XML. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2571\"\u003e#2571\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eXML serialization now repairs element and attribute names that start with an invalid character, rather than outputting \u003ccode\u003enull\u003c/code\u003e elements or dropping attributes. For example, an attribute named \u003ccode\u003e1a\u003c/code\u003e is written as \u003ccode\u003e_1a\u003c/code\u003e. Additional leading underscores keep repaired attribute names unique if they conflict with another attribute. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2573\"\u003e#2573\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eSupplementary Unicode characters are now escaped correctly when serializing with non-UTF, non-ASCII output charsets such as ISO-8859-1. Previously, characters could be emitted unescaped when their low 16-bit value was representable by the configured charset, causing replacement or corruption when the output was encoded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2578\"\u003e#2578\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed the JDK \u003ccode\u003eHttpClient\u003c/code\u003e implementation to accept responses missing a \u003ccode\u003eContent-Type\u003c/code\u003e header, matching the \u003ccode\u003eHttpURLConnection\u003c/code\u003e implementation. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2549\"\u003e#2549\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed HTTP response content-type matching to handle media types case-insensitively and recognize structured \u003ccode\u003e+xml\u003c/code\u003e suffixes, including vendor-specific media types. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2550\"\u003e#2550\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eHTTP request URL normalization now percent-encodes ASCII control characters, DEL, and embedded fragment delimiters, keeping normalized URLs valid for HTTP requests while preserving existing escapes. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2585\"\u003e#2585\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eCorrected multipart form encoding to percent-escape CR and LF in field names and filenames, matching the HTML form submission specification. Multipart file content-types containing CR or LF are now rejected with a \u003ccode\u003eValidationException\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2555\"\u003e#2555\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eAligned trailing comment placement with the HTML specification: comments after \u003ccode\u003e\u0026lt;/body\u0026gt;\u003c/code\u003e remain children of the \u003ccode\u003ehtml\u003c/code\u003e element, while comments after \u003ccode\u003e\u0026lt;/html\u0026gt;\u003c/code\u003e remain children of the document. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2557\"\u003e#2557\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eWhen using the optional \u003ccode\u003ere2j\u003c/code\u003e regular expression engine, memory allocation errors caused by complex selector patterns at match time are now normalized to a \u003ccode\u003eValidationException\u003c/code\u003e with a \u003ccode\u003ePattern complexity error\u003c/code\u003e message.\u003c/li\u003e\n\u003cli\u003eFixed parsing of malformed SVG and MathML content so that breakout HTML tags are placed according to the HTML specification. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2562\"\u003e#2562\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed deeply nested malformed HTML parsing that could lose the document body because stack lookups did not align to the configured maximum parser depth. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2569\"\u003e#2569\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eAligned RCDATA, RAWTEXT, and script-data parsing with the HTML specification: malformed end tags no longer consume following markup, unclosed \u003ccode\u003etitle\u003c/code\u003e/\u003ccode\u003etextarea\u003c/code\u003e content stays text through EOF, and custom text tags match exact names. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2577\"\u003e#2577\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved URL validation during HTTP/HTTPS URL resolution and cleaning; resolved URLs without a host are now rejected instead of being accepted based only on their scheme prefix, aligning to RFC 9110. Valid relative links and non-HTTP(S) schemes are unchanged. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2579\"\u003e#2579\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eRedirects with malformed single-slash HTTP locations now use standard URL resolution to align with browsers. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2580\"\u003e#2580\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eTemplate fragment parsing now handles unmatched \u003ccode\u003e\u0026lt;/template\u0026gt;\u003c/code\u003e tags without throwing a \u003ccode\u003eValidationException\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2581\"\u003e#2581\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved source tracking for adopted formatting elements and malformed markup ending at EOF. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2582\"\u003e#2582\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003c!-- 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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.23.2 (2026-Aug-26)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved consecutive \u003ccode\u003eStreamParser.selectFirst(...)\u003c/code\u003e calls during progressive parsing, so later matches are returned with their parsed contents when earlier selections had left them as parser lookahead. E.g., given \u003ccode\u003e\u0026lt;title\u0026gt;One\u0026lt;/title\u0026gt;\u0026lt;p id=hit\u0026gt;Full\u0026lt;/p\u0026gt;\u0026lt;p\u0026gt;Next\u0026lt;/p\u0026gt;\u003c/code\u003e, selecting \u003ccode\u003etitle\u003c/code\u003e and then \u003ccode\u003e#hit\u003c/code\u003e now advances the partial lookahead and returns \u003ccode\u003e\u0026lt;p id=\u0026quot;hit\u0026quot;\u0026gt;Full\u0026lt;/p\u0026gt;\u003c/code\u003e, rather than returning an empty \u003ccode\u003e\u0026lt;p id=\u0026quot;hit\u0026quot;\u0026gt;\u0026lt;/p\u0026gt;\u003c/code\u003e before its content is parsed. The updated readiness tracking follows StreamParser's normal emission order across implicit HTML structure and parser recovery. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2551\"\u003e#2551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved XML parser performance and memory use for documents with many nested namespace declarations by recording namespace changes within each element scope. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2556\"\u003e#2556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eW3CDom\u003c/code\u003e conversion performance for documents with many nested namespace declarations. The W3C converter now uses the same optimized namespace tracking as the XML parser. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2559\"\u003e#2559\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eW3CDom\u003c/code\u003e XML conversion to retain processing instructions, comments outside the root element, and CDATA sections, which were previously dropped or converted to text. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2572\"\u003e#2572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDOM mutation methods, including child insertion and replacement, now reject operations that would create a cycle, such as making a node its own child or moving an ancestor beneath a descendant. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2552\"\u003e#2552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eElements#before(Node)\u003c/code\u003e, \u003ccode\u003eafter(Node)\u003c/code\u003e, \u003ccode\u003eprepend(Node)\u003c/code\u003e, and \u003ccode\u003eappend(Node)\u003c/code\u003e to match the existing HTML string methods. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/953\"\u003e#953\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLarge file-backed uploads through \u003ccode\u003eConnection.requestBodyStream(InputStream)\u003c/code\u003e now stream directly with the JDK \u003ccode\u003eHttpClient\u003c/code\u003e on Java 11+, rather than being loaded fully into memory first. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2576\"\u003e#2575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExtended Java 11+ HTTP client reuse from requests sharing a \u003ccode\u003eJsoup.newSession()\u003c/code\u003e to ordinary \u003ccode\u003eJsoup.connect(...)\u003c/code\u003e calls, reducing transport thread and connection setup churn under sustained request loads. Sessions with custom authentication or SSL contexts continue to use their own client. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2584\"\u003e#2584\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAligned the XML parser stack depth and lookups to the configured maximum, which now defaults to 512 for both HTML and XML. Use \u003ccode\u003eParser#setMaxDepth(int)\u003c/code\u003e to configure. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2570\"\u003e#2570\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003eW3CDom\u003c/code\u003e namespace conversion in several cases: \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2559\"\u003e#2559\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eNamespace declarations and prefixed attributes now carry the correct namespace URI, so namespace-aware DOM lookups work as expected.\u003c/li\u003e\n\u003cli\u003eAttributes added after parsing, or included through subtree conversion, now use inherited prefix declarations.\u003c/li\u003e\n\u003cli\u003eNamespace declarations now apply regardless of attribute order, and an empty declaration shadows an inherited binding only within its scope.\u003c/li\u003e\n\u003cli\u003eWith namespace awareness disabled, inherited and undeclared prefixes now receive the declarations needed for XML serialization.\u003c/li\u003e\n\u003cli\u003eValid HTML names that are not XML QNames, such as \u003ccode\u003ea:b:c\u003c/code\u003e, are normalized. Attributes that still cannot be represented are skipped, and unrepresentable elements no longer change the surrounding tree.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eW3CDom\u003c/code\u003e conversion of programmatically created or renamed elements whose names can be represented in a jsoup HTML DOM but are not valid XML names, such as \u003ccode\u003e1abc\u003c/code\u003e. These names are now normalized (e.g. \u003ccode\u003e_1abc\u003c/code\u003e) instead of causing a \u003ccode\u003eNullPointerException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2560\"\u003e#2560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed XML doctype serialization when a system identifier contains a double quote, which could otherwise produce invalid XML. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2571\"\u003e#2571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eXML serialization now repairs element and attribute names that start with an invalid character, rather than outputting \u003ccode\u003enull\u003c/code\u003e elements or dropping attributes. For example, an attribute named \u003ccode\u003e1a\u003c/code\u003e is written as \u003ccode\u003e_1a\u003c/code\u003e. Additional leading underscores keep repaired attribute names unique if they conflict with another attribute. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2573\"\u003e#2573\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupplementary Unicode characters are now escaped correctly when serializing with non-UTF, non-ASCII output charsets such as ISO-8859-1. Previously, characters could be emitted unescaped when their low 16-bit value was representable by the configured charset, causing replacement or corruption when the output was encoded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2578\"\u003e#2578\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed the JDK \u003ccode\u003eHttpClient\u003c/code\u003e implementation to accept responses missing a \u003ccode\u003eContent-Type\u003c/code\u003e header, matching the \u003ccode\u003eHttpURLConnection\u003c/code\u003e implementation. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2549\"\u003e#2549\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed HTTP response content-type matching to handle media types case-insensitively and recognize structured \u003ccode\u003e+xml\u003c/code\u003e suffixes, including vendor-specific media types. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2550\"\u003e#2550\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP request URL normalization now percent-encodes ASCII control characters, DEL, and embedded fragment delimiters, keeping normalized URLs valid for HTTP requests while preserving existing escapes. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2585\"\u003e#2585\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCorrected multipart form encoding to percent-escape CR and LF in field names and filenames, matching the HTML form submission specification. Multipart file content-types containing CR or LF are now rejected with a \u003ccode\u003eValidationException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2555\"\u003e#2555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAligned trailing comment placement with the HTML specification: comments after \u003ccode\u003e\u0026lt;/body\u0026gt;\u003c/code\u003e remain children of the \u003ccode\u003ehtml\u003c/code\u003e element, while comments after \u003ccode\u003e\u0026lt;/html\u0026gt;\u003c/code\u003e remain children of the document. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2557\"\u003e#2557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen using the optional \u003ccode\u003ere2j\u003c/code\u003e regular expression engine, memory allocation errors caused by complex selector patterns at match time are now normalized to a \u003ccode\u003eValidationException\u003c/code\u003e with a \u003ccode\u003ePattern complexity error\u003c/code\u003e message.\u003c/li\u003e\n\u003cli\u003eFixed parsing of malformed SVG and MathML content so that breakout HTML tags are placed according to the HTML specification. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2562\"\u003e#2562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed deeply nested malformed HTML parsing that could lose the document body because stack lookups did not align to the configured maximum parser depth. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2569\"\u003e#2569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAligned RCDATA, RAWTEXT, and script-data parsing with the HTML specification: malformed end tags no longer consume following markup, unclosed \u003ccode\u003etitle\u003c/code\u003e/\u003ccode\u003etextarea\u003c/code\u003e content stays text through EOF, and custom text tags match exact names. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2577\"\u003e#2577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved URL validation during HTTP/HTTPS URL resolution and cleaning; resolved URLs without a host are now rejected instead of being accepted based only on their scheme prefix, aligning to RFC 9110. Valid relative links and non-HTTP(S) schemes are unchanged. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2579\"\u003e#2579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRedirects with malformed single-slash HTTP locations now use standard URL resolution to align with browsers. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2580\"\u003e#2580\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTemplate fragment parsing now handles unmatched \u003ccode\u003e\u0026lt;/template\u0026gt;\u003c/code\u003e tags without throwing a \u003ccode\u003eValidationException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2581\"\u003e#2581\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved source tracking for adopted formatting elements and malformed markup ending at EOF. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2582\"\u003e#2582\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.23.1 (2026-Jul-30)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReduced retained memory when parsing with source position tracking enabled (\u003ccode\u003eParser#setTrackPosition(true)\u003c/code\u003e). Source ranges are now stored in compact parser-owned span records instead of node and attribute user data, and \u003ccode\u003ePosition\u003c/code\u003e objects are created lazily when source ranges are read. This cuts tracked DOM retained size by about 50-60% on representative benchmark documents, while keeping \u003ccode\u003eNode#sourceRange()\u003c/code\u003e, \u003ccode\u003eElement#endSourceRange()\u003c/code\u003e, and \u003ccode\u003eAttribute#sourceRange()\u003c/code\u003e behavior intact. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2498\"\u003e#2498\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eElement#classList()\u003c/code\u003e, an immutable snapshot of an element's class names in attribute order. Use \u003ccode\u003ehasClass()\u003c/code\u003e when you just need to test for one class, \u003ccode\u003eclassList()\u003c/code\u003e when you want to read or iterate classes without needing a mutable result, and \u003ccode\u003eclassNames()\u003c/code\u003e when you want the existing mutable, deduplicated set that can be written back with \u003ccode\u003eclassNames(Set)\u003c/code\u003e. The class APIs now share an HTML-whitespace scanner, which also makes \u003ccode\u003eclassNames()\u003c/code\u003e faster and lighter on allocation, especially when walking many elements without class names. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2500\"\u003e#2500\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAligned HTML parser scope classification with the current HTML spec for \u003ccode\u003eselect\u003c/code\u003e, \u003ccode\u003eforeignObject\u003c/code\u003e, and \u003ccode\u003etemplate\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2501\"\u003e#2501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSimplified the HTML tree builder's scope, implied-end-tag, and special-element checks by caching parser-only options on Tag. That improves HTML parser throughput by about 10% on small inputs and up to about 30% on larger inputs in the benchmark fixtures. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2502\"\u003e#2502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved HTML parser throughput stability by making hot tokeniser scan paths compile more predictably. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2507\"\u003e#2507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026lt;noscript\u0026gt;\u003c/code\u003e fallback markup is now parsed into an inspectable DOM subtree in both the document head and body. The fallback acts as a contained parsing island, so malformed markup cannot disrupt the surrounding document structure, while normal HTML tokenization still applies within it. This also improves round-trip serialization. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2537\"\u003e#2537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved redirect credential handling as a defense-in-depth measure: explicit authorization headers and request cookies are no longer forwarded across origins, reducing exposure through open redirects and aligning with HTTP guidance. Cookies managed by a \u003ccode\u003eCookieStore\u003c/code\u003e continue to follow their configured scope. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2540\"\u003e#2540\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/jhy/jsoup/commit/fbc7775c462f5b023d8db54c9a73d7ec17d53300\"\u003e\u003ccode\u003efbc7775\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.23.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/133ebde65afda061ea12818e1e65a53f5d822ea4\"\u003e\u003ccode\u003e133ebde\u003c/code\u003e\u003c/a\u003e Release 1.23.2 notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/be2a74a1f6b3ad9cf2d3aeaac3f68b6c39929bc5\"\u003e\u003ccode\u003ebe2a74a\u003c/code\u003e\u003c/a\u003e Encode control chars during request URL normalization (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2585\"\u003e#2585\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/868f2eb1e6c9a2b826cd56f92b336fdbd616b241\"\u003e\u003ccode\u003e868f2eb\u003c/code\u003e\u003c/a\u003e Java 11 HTTP client reuse covers ordinary connections (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2584\"\u003e#2584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/19c758e2e4abc6a1f52193ceab09c22a7c010f8b\"\u003e\u003ccode\u003e19c758e\u003c/code\u003e\u003c/a\u003e Get Animal Sniffer to run over test code as well.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/17bb839aa5aa1519c729d78656d18adefee730cf\"\u003e\u003ccode\u003e17bb839\u003c/code\u003e\u003c/a\u003e Fix source tracking through HTML repair and malformed EOF (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2582\"\u003e#2582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cad054a61f3ae241a741b6658c50d6f962dfd43c\"\u003e\u003ccode\u003ecad054a\u003c/code\u003e\u003c/a\u003e Template stack checks need to exclude the fragment context (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2581\"\u003e#2581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/46b620860af930eedc193a705eaf7cea5aec89a6\"\u003e\u003ccode\u003e46b6208\u003c/code\u003e\u003c/a\u003e Paranoimia\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/66be2da4e2bd7a207700a4cc9c867d15ae74a587\"\u003e\u003ccode\u003e66be2da\u003c/code\u003e\u003c/a\u003e HTTP redirects use standard URL resolution for single-slash locations (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2580\"\u003e#2580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/b035b623d3d1d0c50d84056d2946ba1a90f7f665\"\u003e\u003ccode\u003eb035b62\u003c/code\u003e\u003c/a\u003e Make hostless HTTP(S) URLs fail resolution and cleaning (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2579\"\u003e#2579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.23.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3,1,0 released!\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix request-specific Swagger UI index transformations by \u003ca href=\"https://github.com/limehee\"\u003e\u003ccode\u003e@​limehee\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3279\"\u003espringdoc/springdoc-openapi#3279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3282\"\u003e#3282\u003c/a\u003e: preserve nest() version predicate across all routes in nest by \u003ca href=\"https://github.com/seonwooj0810\"\u003e\u003ccode\u003e@​seonwooj0810\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3296\"\u003espringdoc/springdoc-openapi#3296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.1.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Spring AI to version \u003cstrong\u003e2.0.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.52\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.11\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3307\"\u003e#3307\u003c/a\u003e – Act upon SonarQube warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3306\"\u003e#3306\u003c/a\u003e – Act upon SonarQube warnings\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3269\"\u003e#3269\u003c/a\u003e – Add mechanism to disable \u003ccode\u003enullable\u003c/code\u003e for Kotlin properties\u003c/li\u003e\n\u003cli\u003eAllow request-specific Swagger UI index transformation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3304\"\u003e#3304\u003c/a\u003e – Kotlin parent class's field is not properly marked as nullable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3294\"\u003e#3294\u003c/a\u003e – Duplicated path getting \u003ccode\u003eswagger-config\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3293\"\u003e#3293\u003c/a\u003e – Inconsistent OpenAPI schema naming with \u003ccode\u003eSNAKE_CASE\u003c/code\u003e: some Java record fields remain camelCase\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3292\"\u003e#3292\u003c/a\u003e – Make \u003ccode\u003eWebProperties\u003c/code\u003e and \u003ccode\u003eWebMvcProperties\u003c/code\u003e optional in \u003ccode\u003eSwaggerConfig\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3284\"\u003e#3284\u003c/a\u003e – Upgrade swagger-core from version 2.2.48 to 2.2.49\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3282\"\u003e#3282\u003c/a\u003e – Preserve version from \u003ccode\u003enest()\u003c/code\u003e predicate across all routes in \u003ccode\u003enest\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3281\"\u003e#3281\u003c/a\u003e – Stabilize Spring Data \u003ccode\u003ePage\u003c/code\u003e schema property order\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3274\"\u003e#3274\u003c/a\u003e – Description disappears from the generated json after upgrade to 3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3270\"\u003e#3270\u003c/a\u003e – Validation annotation of \u003ccode\u003eParameterObject\u003c/code\u003e property applied to \u003ccode\u003ePathVariable\u003c/code\u003e with the same name, even in unrelated endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3266\"\u003e#3266\u003c/a\u003e – Upgrade swagger-core from version 2.2.47 to 2.2.48\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3263\"\u003e#3263\u003c/a\u003e – Null key for a \u003ccode\u003eMap\u003c/code\u003e not allowed in JSON\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.3...v3.1.0\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.3...v3.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- 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/springdoc/springdoc-openapi/blob/main/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.1.0] - 2026-07-31\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3269\"\u003e#3269\u003c/a\u003e – Add mechanism to disable \u003ccode\u003enullable\u003c/code\u003e for Kotlin properties\u003c/li\u003e\n\u003cli\u003eAllow request-specific Swagger UI index transformation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.1.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Spring AI to version \u003cstrong\u003e2.0.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.52\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.11\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3307\"\u003e#3307\u003c/a\u003e – Act upon SonarQube warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3306\"\u003e#3306\u003c/a\u003e – Act upon SonarQube warnings\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3304\"\u003e#3304\u003c/a\u003e – Kotlin parent class's field is not properly marked as nullable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3294\"\u003e#3294\u003c/a\u003e – Duplicated path getting \u003ccode\u003eswagger-config\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3293\"\u003e#3293\u003c/a\u003e – Inconsistent OpenAPI schema naming with \u003ccode\u003eSNAKE_CASE\u003c/code\u003e: some Java record fields remain camelCase\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3292\"\u003e#3292\u003c/a\u003e – Make \u003ccode\u003eWebProperties\u003c/code\u003e and \u003ccode\u003eWebMvcProperties\u003c/code\u003e optional in \u003ccode\u003eSwaggerConfig\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3284\"\u003e#3284\u003c/a\u003e – Upgrade swagger-core from version 2.2.48 to 2.2.49\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3282\"\u003e#3282\u003c/a\u003e – Preserve version from \u003ccode\u003enest()\u003c/code\u003e predicate across all routes in \u003ccode\u003enest\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3281\"\u003e#3281\u003c/a\u003e – Stabilize Spring Data \u003ccode\u003ePage\u003c/code\u003e schema property order\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3274\"\u003e#3274\u003c/a\u003e – Description disappears from the generated json after upgrade to 3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3270\"\u003e#3270\u003c/a\u003e – Validation annotation of \u003ccode\u003eParameterObject\u003c/code\u003e property applied to \u003ccode\u003ePathVariable\u003c/code\u003e with the same name, even in unrelated endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3266\"\u003e#3266\u003c/a\u003e – Upgrade swagger-core from version 2.2.47 to 2.2.48\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3263\"\u003e#3263\u003c/a\u003e – Null key for a \u003ccode\u003eMap\u003c/code\u003e not allowed in JSON\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/e04f91f10267bc7f31e9031886dd3a46bb77c938\"\u003e\u003ccode\u003ee04f91f\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/83551ce77894346de853f5755879ff8acb698e49\"\u003e\u003ccode\u003e83551ce\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4a2b5bd5c53afd98cc29f0e72bfdbf048e02ff17\"\u003e\u003ccode\u003e4a2b5bd\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/ad0a5a51caa709ec5bbaf549c404863eda619d90\"\u003e\u003ccode\u003ead0a5a5\u003c/code\u003e\u003c/a\u003e swagger-ui upgrade to version 5.32.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6e14cb4a0ead3306ded7dfd9a64d51132bb6761f\"\u003e\u003ccode\u003e6e14cb4\u003c/code\u003e\u003c/a\u003e Fix sonarqube errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/eae20564510fc1640e5098774dc96d6b976b3e46\"\u003e\u003ccode\u003eeae2056\u003c/code\u003e\u003c/a\u003e Fix sonarqube errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/b09a77bb6e4357498eec1743021a22c865374f1c\"\u003e\u003ccode\u003eb09a77b\u003c/code\u003e\u003c/a\u003e chore: act upon SonarQube warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/cc3d86d6f83f64e1fd76b14ec6de5c84d32227cc\"\u003e\u003ccode\u003ecc3d86d\u003c/code\u003e\u003c/a\u003e upgrade spring-ai to version 2.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df1c2ba12f9ef979c0afd1fd05f35d0901937bc5\"\u003e\u003ccode\u003edf1c2ba\u003c/code\u003e\u003c/a\u003e spring-boot upgrade to 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/b6e5212d8b7afea30f6fa9b95561633411d2148d\"\u003e\u003ccode\u003eb6e5212\u003c/code\u003e\u003c/a\u003e Kotlin parent class's field is not properly marked as nullable. Fixes \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3304\"\u003e#3304\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.6 to 4.0.9\n\nUpdates `org.freemarker:freemarker` from 2.3.34 to 2.3.35\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.2.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/719429d87e0d92615d67668cb3329b8dd1505b37\"\u003e\u003ccode\u003e719429d\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/d0b98774d055e546461f1a7c7da3f3bc5361a881\"\u003e\u003ccode\u003ed0b9877\u003c/code\u003e\u003c/a\u003e Prep for 3.2.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/e32f526099b197d4dfb54de78f61b6fb60d716f0\"\u003e\u003ccode\u003ee32f526\u003c/code\u003e\u003c/a\u003e Merge branch '3.1' into 3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/113f6a1c10d68bc7d5c68e3f32e460fb9ed3059d\"\u003e\u003ccode\u003e113f6a1\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/46176f6827827d1be11758b12cdfadac0bf15b6d\"\u003e\u003ccode\u003e46176f6\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-bom/commit/8b4a513d2b5a34079eaa358109d87fbc99639d78\"\u003e\u003ccode\u003e8b4a513\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/adeda6f6cf5e631ff7155a0cda3c56e8fc828a96\"\u003e\u003ccode\u003eadeda6f\u003c/code\u003e\u003c/a\u003e Prep for 3.1.6 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/c3a4debfa3d36192ea8a7ea4b54a698f46b025b8\"\u003e\u003ccode\u003ec3a4deb\u003c/code\u003e\u003c/a\u003e Merge branch '3.1' into 3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c74470ab201f11de73204a35abe38150640360b\"\u003e\u003ccode\u003e3c74470\u003c/code\u003e\u003c/a\u003e Merge branch '2.x' into 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/06416bab1a4a7258531eee9686b80c619bfecea6\"\u003e\u003ccode\u003e06416ba\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.gi...\n\n_Description has been truncated_","html_url":"https://github.com/cdome/ollumi/pull/74","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdome%2Follumi/issues/74","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/74/packages"},{"uuid":"5282886444","node_id":"PR_kwDOE25TVc8AAAABBZSKHQ","number":39,"state":"closed","title":"Bump org.mariadb.jdbc:mariadb-java-client from 3.1.4 to 3.3.5 in /transactional-event-core","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":"2026-08-30T20:56:54.000Z","author_association":null,"state_reason":null,"created_at":"2026-08-28T22:44:33.000Z","updated_at":"2026-08-30T20:57:02.000Z","time_to_close":166341,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.1.4","new_version":"3.3.5","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"}],"path":"/transactional-event-core","ecosystem":"maven"},"body":"Bumps [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) from 3.1.4 to 3.3.5.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.5\"\u003e3.3.5\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.4...3.3.5\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1259 DatabaseMetaData read-only detection: handle MariaDB 12.0 \u003ccode\u003e@@read_only\u003c/code\u003e returning \u003ccode\u003eON\u003c/code\u003e/\u003ccode\u003eOFF\u003c/code\u003e\ninstead of \u003ccode\u003e1\u003c/code\u003e/\u003ccode\u003e0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCONJ-1317 ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.3\"\u003e3.3.4\u003c/a\u003e (Mar 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.3...3.3.4\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1237 wrong statements.isClosed value after closing connection\u003c/li\u003e\n\u003cli\u003eCONJ-1236 ensure not having NPE after reconnection fail for high availability configurations\u003c/li\u003e\n\u003cli\u003eCONJ-1239 disable BULK use when there isn't any parameter\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.3\"\u003e3.3.3\u003c/a\u003e (Feb 2024)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.2...3.3.3\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1050 regression in 3.x.y: nonparameterized batch \u0026quot;INSERT INTO products( name ) VALUES ( 'aaaa' )\u0026quot; fails\u003c/li\u003e\n\u003cli\u003eCONJ-1150 Error using PrepareStatement.setURL with null url\u003c/li\u003e\n\u003cli\u003eCONJ-1152 Improve message when reaching socket timeout during connection initial commands\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.2\"\u003e3.3.2\u003c/a\u003e (Dec 2023)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.1...3.3.2\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1117 new option \u003ccode\u003ereturnMultiValuesGeneratedIds\u003c/code\u003e for connector 2.x compatibility, so getGeneratedKeys() return all\nids of multi-value inserts\u003c/li\u003e\n\u003cli\u003eCONJ-1140 regression caussing ClassCastException on DatabaseMetaData when use with option defaultFetchSize set\u003c/li\u003e\n\u003cli\u003eCONJ-1129 Metadata.getPrimaryKeys table comparison using like in place of strict equality\u003c/li\u003e\n\u003cli\u003eCONJ-1130 ensuring batch parameter are cleared after SQL Failure\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- 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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.5\"\u003e3.3.5\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.4...3.3.5\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1259 - DatabaseMetaData read-only detection: handle MariaDB 12.0 \u003ccode\u003e@@read_only\u003c/code\u003e returning \u003ccode\u003eON\u003c/code\u003e/\u003ccode\u003eOFF\u003c/code\u003e\ninstead of \u003ccode\u003e1\u003c/code\u003e/\u003ccode\u003e0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 - LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - allowLocalInfile=false does not block LOAD DATA LOCAL INFILE against a malicious server (thanks to tharavel)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/2.7.14\"\u003e2.7.14\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/2.7.13...2.7.14\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites (fixes locale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003ecreate gssapi jaas config temp file with owner-only permissions (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eencode caching_sha2 clear password as UTF-8 (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003ecall inflater.end() in finally in CompressInputStream (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - allowLocalInfile=false does not block LOAD DATA LOCAL INFILE against a malicious server (thanks to tharavel)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.7\"\u003e3.5.7\u003c/a\u003e (Dec 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.6...3.5.7\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/f522a2f560c6e07d1d4b9a7957ed31bc57038af4\"\u003e\u003ccode\u003ef522a2f\u003c/code\u003e\u003c/a\u003e [misc] change maven oss to central since oss is now deprecated\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/e7727e2896b49a96687d14f916a0ad97d3aac01b\"\u003e\u003ccode\u003ee7727e2\u003c/code\u003e\u003c/a\u003e [misc] update CHANGELOG for 3.3.5: add bug fixes for CONJ-1322 and CONJ-1323\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/65b28c6d8330a5ddcd9d823b87381c9f73eea676\"\u003e\u003ccode\u003e65b28c6\u003c/code\u003e\u003c/a\u003e match local infile filename case-sensitively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/76d03ab41468d3e3a3fed916c64d6f3a6e7e1c5a\"\u003e\u003ccode\u003e76d03ab\u003c/code\u003e\u003c/a\u003e [misc] fix RedoContextTest compilation against 3.x API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/b929257556eeed3d6a6751a783f9b988aefd2c00\"\u003e\u003ccode\u003eb929257\u003c/code\u003e\u003c/a\u003e bump 3.3.5 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/0ede8eda2f96a95e41942b2004a19bca624acb79\"\u003e\u003ccode\u003e0ede8ed\u003c/code\u003e\u003c/a\u003e [misc] update license header to 2026\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/098543024a49d12879e8106b92be20a3ae19f1c7\"\u003e\u003ccode\u003e0985430\u003c/code\u003e\u003c/a\u003e [misc] use literal -- instead of [-] in LOAD LOCAL INFILE comment regex\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/eabb007536d05041aa6b0874f57a07a1490d6d3c\"\u003e\u003ccode\u003eeabb007\u003c/code\u003e\u003c/a\u003e Fix: replace [--] with [-] in LOAD LOCAL INFILE regex patterns\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/87fe3d2a09870a5737b2a4daa7668ad9d80c5494\"\u003e\u003ccode\u003e87fe3d2\u003c/code\u003e\u003c/a\u003e encode caching_sha2 clear password as UTF-8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/39bd9d1c2dac3fae6d50dbc8525387acd64a041e\"\u003e\u003ccode\u003e39bd9d1\u003c/code\u003e\u003c/a\u003e [misc] only buffer in-transaction statements for transaction replay\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.1.4...3.3.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/jonasrutishauser/transactional-event/pull/39","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonasrutishauser%2Ftransactional-event/issues/39","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/39/packages"},{"uuid":"5282885211","node_id":"PR_kwDOF4uQ4c8AAAABBZSF8w","number":69,"state":"closed","title":"Bump org.mariadb.jdbc:mariadb-java-client from 3.0.5 to 3.3.5 in /Logger-Velocity","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-09-04T21:48:15.000Z","author_association":null,"state_reason":null,"created_at":"2026-08-28T22:44:21.000Z","updated_at":"2026-09-04T21:48:17.000Z","time_to_close":601434,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.0.5","new_version":"3.3.5","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"}],"path":"/Logger-Velocity","ecosystem":"maven"},"body":"Bumps [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) from 3.0.5 to 3.3.5.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.5\"\u003e3.3.5\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.4...3.3.5\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1259 DatabaseMetaData read-only detection: handle MariaDB 12.0 \u003ccode\u003e@@read_only\u003c/code\u003e returning \u003ccode\u003eON\u003c/code\u003e/\u003ccode\u003eOFF\u003c/code\u003e\ninstead of \u003ccode\u003e1\u003c/code\u003e/\u003ccode\u003e0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCONJ-1317 ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.3\"\u003e3.3.4\u003c/a\u003e (Mar 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.3...3.3.4\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1237 wrong statements.isClosed value after closing connection\u003c/li\u003e\n\u003cli\u003eCONJ-1236 ensure not having NPE after reconnection fail for high availability configurations\u003c/li\u003e\n\u003cli\u003eCONJ-1239 disable BULK use when there isn't any parameter\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.3\"\u003e3.3.3\u003c/a\u003e (Feb 2024)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.2...3.3.3\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1050 regression in 3.x.y: nonparameterized batch \u0026quot;INSERT INTO products( name ) VALUES ( 'aaaa' )\u0026quot; fails\u003c/li\u003e\n\u003cli\u003eCONJ-1150 Error using PrepareStatement.setURL with null url\u003c/li\u003e\n\u003cli\u003eCONJ-1152 Improve message when reaching socket timeout during connection initial commands\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.2\"\u003e3.3.2\u003c/a\u003e (Dec 2023)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.1...3.3.2\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1117 new option \u003ccode\u003ereturnMultiValuesGeneratedIds\u003c/code\u003e for connector 2.x compatibility, so getGeneratedKeys() return all\nids of multi-value inserts\u003c/li\u003e\n\u003cli\u003eCONJ-1140 regression caussing ClassCastException on DatabaseMetaData when use with option defaultFetchSize set\u003c/li\u003e\n\u003cli\u003eCONJ-1129 Metadata.getPrimaryKeys table comparison using like in place of strict equality\u003c/li\u003e\n\u003cli\u003eCONJ-1130 ensuring batch parameter are cleared after SQL Failure\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- 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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.5\"\u003e3.3.5\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.4...3.3.5\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1259 - DatabaseMetaData read-only detection: handle MariaDB 12.0 \u003ccode\u003e@@read_only\u003c/code\u003e returning \u003ccode\u003eON\u003c/code\u003e/\u003ccode\u003eOFF\u003c/code\u003e\ninstead of \u003ccode\u003e1\u003c/code\u003e/\u003ccode\u003e0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 - LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - allowLocalInfile=false does not block LOAD DATA LOCAL INFILE against a malicious server (thanks to tharavel)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/2.7.14\"\u003e2.7.14\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/2.7.13...2.7.14\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites (fixes locale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003ecreate gssapi jaas config temp file with owner-only permissions (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eencode caching_sha2 clear password as UTF-8 (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003ecall inflater.end() in finally in CompressInputStream (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - allowLocalInfile=false does not block LOAD DATA LOCAL INFILE against a malicious server (thanks to tharavel)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.7\"\u003e3.5.7\u003c/a\u003e (Dec 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.6...3.5.7\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/f522a2f560c6e07d1d4b9a7957ed31bc57038af4\"\u003e\u003ccode\u003ef522a2f\u003c/code\u003e\u003c/a\u003e [misc] change maven oss to central since oss is now deprecated\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/e7727e2896b49a96687d14f916a0ad97d3aac01b\"\u003e\u003ccode\u003ee7727e2\u003c/code\u003e\u003c/a\u003e [misc] update CHANGELOG for 3.3.5: add bug fixes for CONJ-1322 and CONJ-1323\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/65b28c6d8330a5ddcd9d823b87381c9f73eea676\"\u003e\u003ccode\u003e65b28c6\u003c/code\u003e\u003c/a\u003e match local infile filename case-sensitively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/76d03ab41468d3e3a3fed916c64d6f3a6e7e1c5a\"\u003e\u003ccode\u003e76d03ab\u003c/code\u003e\u003c/a\u003e [misc] fix RedoContextTest compilation against 3.x API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/b929257556eeed3d6a6751a783f9b988aefd2c00\"\u003e\u003ccode\u003eb929257\u003c/code\u003e\u003c/a\u003e bump 3.3.5 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/0ede8eda2f96a95e41942b2004a19bca624acb79\"\u003e\u003ccode\u003e0ede8ed\u003c/code\u003e\u003c/a\u003e [misc] update license header to 2026\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/098543024a49d12879e8106b92be20a3ae19f1c7\"\u003e\u003ccode\u003e0985430\u003c/code\u003e\u003c/a\u003e [misc] use literal -- instead of [-] in LOAD LOCAL INFILE comment regex\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/eabb007536d05041aa6b0874f57a07a1490d6d3c\"\u003e\u003ccode\u003eeabb007\u003c/code\u003e\u003c/a\u003e Fix: replace [--] with [-] in LOAD LOCAL INFILE regex patterns\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/87fe3d2a09870a5737b2a4daa7668ad9d80c5494\"\u003e\u003ccode\u003e87fe3d2\u003c/code\u003e\u003c/a\u003e encode caching_sha2 clear password as UTF-8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/39bd9d1c2dac3fae6d50dbc8525387acd64a041e\"\u003e\u003ccode\u003e39bd9d1\u003c/code\u003e\u003c/a\u003e [misc] only buffer in-transaction statements for transaction replay\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.0.5...3.3.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.mariadb.jdbc:mariadb-java-client\u0026package-manager=maven\u0026previous-version=3.0.5\u0026new-version=3.3.5)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\nYou can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/ExceptedPrism3/Logger/network/alerts).\n\n\u003c/details\u003e","html_url":"https://github.com/ExceptedPrism3/Logger/pull/69","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ExceptedPrism3%2FLogger/issues/69","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/69/packages"},{"uuid":"5234116539","node_id":"PR_kwDOAB81F88AAAABAyfPNw","number":15655,"state":"open","title":"[12.0.x EE8] Bump the dev-dependencies group across 1 directory with 22 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-08-24T11:18:45.000Z","updated_at":"2026-09-01T08:45:35.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[12.0.x EE8] Bump","group_name":"dev-dependencies","update_count":22,"packages":[{"name":"org.codehaus.plexus:plexus-xml","old_version":"4.1.1","new_version":"4.2.0","repository_url":"https://github.com/codehaus-plexus/plexus-xml"},{"name":"org.conscrypt:conscrypt-openjdk-uber","old_version":"2.6.0","new_version":"2.6.3","repository_url":"https://github.com/google/conscrypt"},{"name":"com.fasterxml.jackson:jackson-bom","old_version":"2.22.1","new_version":"2.22.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"io.netty:netty-bom","old_version":"4.2.16.Final","new_version":"4.2.17.Final","repository_url":"https://github.com/netty/netty"},{"name":"ch.qos.logback:logback-core","old_version":"1.5.38","new_version":"1.6.3","repository_url":"https://github.com/qos-ch/logback"},{"name":"com.google.guava:guava","old_version":"33.6.0-jre","new_version":"33.7.1-jre","repository_url":"https://github.com/google/guava"},{"name":"commons-codec:commons-codec","old_version":"1.22.0","new_version":"1.22.1","repository_url":"https://github.com/apache/commons-codec"},{"name":"io.grpc:grpc-core","old_version":"1.82.2","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc-java"},{"name":"io.grpc:grpc-netty-shaded","old_version":"1.82.2","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc-java"},{"name":"io.smallrye.common:smallrye-common-annotation","old_version":"2.19.0","new_version":"2.20.0","repository_url":"https://github.com/smallrye/smallrye-common"},{"name":"io.smallrye.common:smallrye-common-cpu","old_version":"2.19.0","new_version":"2.20.0","repository_url":"https://github.com/smallrye/smallrye-common"},{"name":"org.bouncycastle:bctls-jdk18on","old_version":"1.84","new_version":"1.85","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.codehaus.plexus:plexus-classworlds","old_version":"2.12.0","new_version":"2.12.1","repository_url":"https://github.com/codehaus-plexus/plexus-classworlds"},{"name":"org.codehaus.plexus:plexus-utils","old_version":"4.0.3","new_version":"4.1.0","repository_url":"https://github.com/codehaus-plexus/plexus-utils"},{"name":"org.eclipse.sisu:org.eclipse.sisu.inject","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/eclipse-sisu/sisu-project"},{"name":"org.eclipse.sisu:org.eclipse.sisu.plexus","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/eclipse-sisu/sisu-project"},{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.9","new_version":"3.5.10","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.eclipse.jetty.toolchain:jetty-build-support","old_version":"1.5","new_version":"1.6"},{"name":"eu.maveniverse.maven.njord:extension3","old_version":"0.9.9","new_version":"0.9.10","repository_url":"https://github.com/maveniverse/njord"},{"name":"eu.maveniverse.maven.plugins:njord","old_version":"0.9.9","new_version":"0.9.10","repository_url":"https://github.com/maveniverse/njord"},{"name":"org.apache.maven.extensions:maven-build-cache-extension","old_version":"1.2.3","new_version":"1.3.0","repository_url":"https://github.com/apache/maven-build-cache-extension"},{"name":"org.cyclonedx:cyclonedx-maven-plugin","old_version":"2.9.2","new_version":"2.9.3","repository_url":"https://github.com/CycloneDX/cyclonedx-maven-plugin"}],"path":null,"ecosystem":"maven"},"body":"[//]: # (dependabot-start)\n⚠️  **Dependabot is rebasing this PR** ⚠️ \n\nRebasing might not happen immediately, so don't worry if this takes some time.\n\nNote: if you make any changes to this PR yourself, they will take precedence over the rebase.\n\n---\n\n[//]: # (dependabot-end)\n\nBumps the dev-dependencies group with 22 updates in the /jetty-ee8 directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.codehaus.plexus:plexus-xml](https://github.com/codehaus-plexus/plexus-xml) | `4.1.1` | `4.2.0` |\n| [org.conscrypt:conscrypt-openjdk-uber](https://github.com/google/conscrypt) | `2.6.0` | `2.6.3` |\n| [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `2.22.1` | `2.22.2` |\n| [io.netty:netty-bom](https://github.com/netty/netty) | `4.2.16.Final` | `4.2.17.Final` |\n| [ch.qos.logback:logback-core](https://github.com/qos-ch/logback) | `1.5.38` | `1.6.3` |\n| [com.google.guava:guava](https://github.com/google/guava) | `33.6.0-jre` | `33.7.1-jre` |\n| [commons-codec:commons-codec](https://github.com/apache/commons-codec) | `1.22.0` | `1.22.1` |\n| [io.grpc:grpc-core](https://github.com/grpc/grpc-java) | `1.82.2` | `1.83.1` |\n| [io.grpc:grpc-netty-shaded](https://github.com/grpc/grpc-java) | `1.82.2` | `1.83.1` |\n| [io.smallrye.common:smallrye-common-annotation](https://github.com/smallrye/smallrye-common) | `2.19.0` | `2.20.0` |\n| [io.smallrye.common:smallrye-common-cpu](https://github.com/smallrye/smallrye-common) | `2.19.0` | `2.20.0` |\n| [org.bouncycastle:bctls-jdk18on](https://github.com/bcgit/bc-java) | `1.84` | `1.85` |\n| [org.codehaus.plexus:plexus-classworlds](https://github.com/codehaus-plexus/plexus-classworlds) | `2.12.0` | `2.12.1` |\n| [org.codehaus.plexus:plexus-utils](https://github.com/codehaus-plexus/plexus-utils) | `4.0.3` | `4.1.0` |\n| [org.eclipse.sisu:org.eclipse.sisu.inject](https://github.com/eclipse-sisu/sisu-project) | `1.0.1` | `1.1.0` |\n| [org.eclipse.sisu:org.eclipse.sisu.plexus](https://github.com/eclipse-sisu/sisu-project) | `1.0.1` | `1.1.0` |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.9` | `3.5.10` |\n| org.eclipse.jetty.toolchain:jetty-build-support | `1.5` | `1.6` |\n| [eu.maveniverse.maven.njord:extension3](https://github.com/maveniverse/njord) | `0.9.9` | `0.9.10` |\n| [eu.maveniverse.maven.plugins:njord](https://github.com/maveniverse/njord) | `0.9.9` | `0.9.10` |\n| [org.apache.maven.extensions:maven-build-cache-extension](https://github.com/apache/maven-build-cache-extension) | `1.2.3` | `1.3.0` |\n| [org.cyclonedx:cyclonedx-maven-plugin](https://github.com/CycloneDX/cyclonedx-maven-plugin) | `2.9.2` | `2.9.3` |\n\n\nUpdates `org.codehaus.plexus:plexus-xml` from 4.1.1 to 4.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/releases\"\u003eorg.codehaus.plexus:plexus-xml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.2.0\u003c/h2\u003e\n\u003cp\u003eThe 4.x line no longer builds its DOM through Maven's deprecated \u003ccode\u003eXmlNodeBuilder\u003c/code\u003e: \u003ccode\u003eXpp3DomBuilder\u003c/code\u003e uses a pull builder of its own, so a future Maven can delete that class without breaking this one. The artifact also carries \u003ccode\u003eAutomatic-Module-Name: org.codehaus.plexus.util.xml\u003c/code\u003e, which anyone on the module path sees.\u003c/p\u003e\n\u003cp\u003eThe Maven dependency is split: \u003ccode\u003emaven-api-xml\u003c/code\u003e at compile, \u003ccode\u003emaven-xml\u003c/code\u003e at runtime, since \u003ccode\u003eXmlService\u003c/code\u003e resolves its implementation through \u003ccode\u003eServiceLoader\u003c/code\u003e. Consumers keep the API transitively and lose \u003ccode\u003eorg.apache.maven.internal.*\u003c/code\u003e along with woodstox-core and stax2-api.\u003c/p\u003e\n\u003cp\u003eRequires Java 17 and Maven 4. On Maven 3, use the 3.x line.\u003c/p\u003e\n\u003ch2\u003e🚀 New features and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEstablish an automatic module name (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/92\"\u003e#92\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild the DOM with a local pull builder instead of Maven's deprecated XmlNodeBuilder (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/94\"\u003e#94\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📝 Documentation updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRewrite README with usage, status and version guidance (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/88\"\u003e#88\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e👻 Maintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSet the next development version to 4.2.0-SNAPSHOT (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/97\"\u003e#97\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild against maven-xml 4.0.0-rc-6 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/87\"\u003e#87\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove deprecated XmlNode references (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/81\"\u003e#81\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔧 Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate parent to plexus 27 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/99\"\u003e#99\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📦 Dependency updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDepend on maven-api-xml at compile and maven-xml at runtime (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/96\"\u003e#96\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.codehaus.plexus:plexus from 25 to 26 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/90\"\u003e#90\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump release-drafter/release-drafter from 7.6.0 to 7.7.0 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/86\"\u003e#86\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump release-drafter/release-drafter from 7 to 7.6.0 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/84\"\u003e#84\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump release-drafter/release-drafter from 6 to 7 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/79\"\u003e#79\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\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/codehaus-plexus/plexus-xml/commit/215f435589f545e3c6bb840513f45a952709fb5a\"\u003e\u003ccode\u003e215f435\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release plexus-xml-4.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/ce5d0624363998ebfc398f55672921552d7578ae\"\u003e\u003ccode\u003ece5d062\u003c/code\u003e\u003c/a\u003e Update parent to plexus 27\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/38c200b943a3109066ea3a18001ab8f1e11d4ee3\"\u003e\u003ccode\u003e38c200b\u003c/code\u003e\u003c/a\u003e Depend on maven-api-xml at compile and maven-xml at runtime\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/ae27358905fc4eb0fb28a6b10ea2a0cbb566c966\"\u003e\u003ccode\u003eae27358\u003c/code\u003e\u003c/a\u003e Set the next development version to 4.2.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/d1c51ce927244d359ed7aeb86ef809c0e77205cb\"\u003e\u003ccode\u003ed1c51ce\u003c/code\u003e\u003c/a\u003e Establish an automatic module name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/d0f198be29880b2124560a72f4a7684ceb5d24f8\"\u003e\u003ccode\u003ed0f198b\u003c/code\u003e\u003c/a\u003e Build the DOM with a local pull builder, not Maven's XmlNodeBuilder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/470396adc7ca98a41b00b45ea908d6941ebe6ae3\"\u003e\u003ccode\u003e470396a\u003c/code\u003e\u003c/a\u003e Bump org.codehaus.plexus:plexus from 25 to 26\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/51d60d59faff0fde7d6fe75986909819fb45f0e3\"\u003e\u003ccode\u003e51d60d5\u003c/code\u003e\u003c/a\u003e Rewrite README with usage, status and version guidance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/e91d180a097e8777450d6cfba5cc0c4c3fd3226c\"\u003e\u003ccode\u003ee91d180\u003c/code\u003e\u003c/a\u003e Bump release-drafter/release-drafter from 7.6.0 to 7.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/b628bf3a4e89d939808f90eb1fd431f039ef5d18\"\u003e\u003ccode\u003eb628bf3\u003c/code\u003e\u003c/a\u003e Build against maven-xml 4.0.0-rc-6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/compare/plexus-xml-4.1.1...plexus-xml-4.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.conscrypt:conscrypt-openjdk-uber` from 2.6.0 to 2.6.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/google/conscrypt/releases\"\u003eorg.conscrypt:conscrypt-openjdk-uber's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.6.3\u003c/h2\u003e\n\u003cp\u003eThis release uses the same Conscrypt source code as release 2.6.2, but the maven binary was compiled with this boringssl version:\n\u003ca href=\"https://boringssl.googlesource.com/boringssl/+/refs/tags/0.20260616.0\"\u003ehttps://boringssl.googlesource.com/boringssl/+/refs/tags/0.20260616.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis should fix \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1530\"\u003egoogle/conscrypt#1530\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.6.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1526\"\u003egoogle/conscrypt#1526\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNow only requires GLIBC_2.14, which fixes \u003ca href=\"https://redirect.github.com/robolectric/robolectric/issues/11362\"\u003erobolectric/robolectric#11362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.6.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1519\"\u003egoogle/conscrypt#1519\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1499#issuecomment-4923001123\"\u003egoogle/conscrypt#1499\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/google/conscrypt/commit/657e1c64c46961bcc48e7302e42ebc02d6632645\"\u003e\u003ccode\u003e657e1c6\u003c/code\u003e\u003c/a\u003e Use an Ubuntu 20.04 container to build Concrypt on GitHub CI, and make Make a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/44a36308a64e3f872192baabd7c3b5819dc618a2\"\u003e\u003ccode\u003e44a3630\u003c/code\u003e\u003c/a\u003e Close contexts after each test in SSLEngineVersionCompatibilityTest. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1524\"\u003e#1524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/5bdcae0fe8aeb92009eba087969aed7f0ae0e167\"\u003e\u003ccode\u003e5bdcae0\u003c/code\u003e\u003c/a\u003e Project import generated by Copybara. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1523\"\u003e#1523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/6135d6016b052477efe689fd98e5fca9b5325eed\"\u003e\u003ccode\u003e6135d60\u003c/code\u003e\u003c/a\u003e Project import generated by Copybara. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1522\"\u003e#1522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/google/conscrypt/compare/2.6.0...2.6.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.22.1 to 2.22.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/062d76d67a3619238e00d4d62f9bdb51cfe6cd52\"\u003e\u003ccode\u003e062d76d\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/dcf18f79fa8a9b935d880b3906291d8ed8cb1d0d\"\u003e\u003ccode\u003edcf18f7\u003c/code\u003e\u003c/a\u003e Prep for 2.22.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/9688c7b1dfc9072fdec7c9770653072d0a728fd1\"\u003e\u003ccode\u003e9688c7b\u003c/code\u003e\u003c/a\u003e Merge branch '2.21' into 2.22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7796a7ddb240ce41c1b6c6a3a435b29948a6a727\"\u003e\u003ccode\u003e7796a7d\u003c/code\u003e\u003c/a\u003e Merge branch '2.20' into 2.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/d3cd7fc1794f6d1a9f0a4dee41d8d46a310741d7\"\u003e\u003ccode\u003ed3cd7fc\u003c/code\u003e\u003c/a\u003e Merge branch '2.19' into 2.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7a28068902087b3c407d2dcabd875d7593127d97\"\u003e\u003ccode\u003e7a28068\u003c/code\u003e\u003c/a\u003e Merge branch '2.18' into 2.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/51eb4657b141f598bb285763ac42492bd23a1da3\"\u003e\u003ccode\u003e51eb465\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/34ff5e8c68b0712086794b8287d0ad643a0a1993\"\u003e\u003ccode\u003e34ff5e8\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-bom/commit/0b44a458b999c5ac5568e2a4b1190a7d1080038e\"\u003e\u003ccode\u003e0b44a45\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.18.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/691ec93ce7c1fcc582a2a44348e82e91ca424098\"\u003e\u003ccode\u003e691ec93\u003c/code\u003e\u003c/a\u003e Prep for 2.18.10 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.22.1...jackson-bom-2.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.netty:netty-bom` from 4.2.16.Final to 4.2.17.Final\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/netty/netty/releases\"\u003eio.netty:netty-bom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enetty-4.2.17.Final\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAsciiString.cached(String) should sanitize the provided String (\u003ca href=\"https://redirect.github.com/netty/netty/issues/13749\"\u003e#13749\u003c/a\u003e) by \u003ca href=\"https://github.com/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17007\"\u003enetty/netty#17007\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deploy workflow by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17071\"\u003enetty/netty#17071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix AsciiString.cached(String) performance regression by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17074\"\u003enetty/netty#17074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSslHandler: Fix possible buffer leak when an OOME is thrown during allocation by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17059\"\u003enetty/netty#17059\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leak presence detector in leak profile by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17073\"\u003enetty/netty#17073\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd HttpContentCompressor constructor with ability to specify desired maxPipelineDepth by \u003ca href=\"https://github.com/reta\"\u003e\u003ccode\u003e@​reta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17068\"\u003enetty/netty#17068\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: preserve readPending when rescheduling cancelled reads by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17087\"\u003enetty/netty#17087\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject negative maxOrder in PooledByteBufAllocator by \u003ca href=\"https://github.com/coderbruis\"\u003e\u003ccode\u003e@​coderbruis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17093\"\u003enetty/netty#17093\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix AdaptiveByteBuf._setLongLE calling checked setLongLE by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17098\"\u003enetty/netty#17098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSnappy: Guard decoder against invalid chunk lengths by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17099\"\u003enetty/netty#17099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix OCSP Tests by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17114\"\u003enetty/netty#17114\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate to latest netty-tcnative release by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17056\"\u003enetty/netty#17056\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse safe decompressor in Lz4FrameDecoder by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17118\"\u003enetty/netty#17118\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConfigure TestLens for the PR builds by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17129\"\u003enetty/netty#17129\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: add SO_INQ support for Unix domain sockets by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17127\"\u003enetty/netty#17127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(mqtt): drop UNSUBACK reason codes for MQTT 3.x encoding by \u003ca href=\"https://github.com/ChunMengLu\"\u003e\u003ccode\u003e@​ChunMengLu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17117\"\u003enetty/netty#17117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePropagate the CI envionment variables through to the docker builds by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17138\"\u003enetty/netty#17138\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add decompressor API by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16745\"\u003enetty/netty#16745\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix silent failures and optimize error short-circuit in multi-threaded tests by \u003ca href=\"https://github.com/rajan-github\"\u003e\u003ccode\u003e@​rajan-github\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17106\"\u003enetty/netty#17106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Bzip2Decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17145\"\u003enetty/netty#17145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix buddy cache evicting chunks with live buffers by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17154\"\u003enetty/netty#17154\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Snappy frame decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17153\"\u003enetty/netty#17153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add zlib decompressors by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17155\"\u003enetty/netty#17155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Zstd decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17152\"\u003enetty/netty#17152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add LZF decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17147\"\u003enetty/netty#17147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add BrotliDecompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17146\"\u003enetty/netty#17146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Lz4FrameDecompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17148\"\u003enetty/netty#17148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eHttpObjectEncoder\u003c/code\u003e / \u003ccode\u003eDefaultHttp2FrameWriter\u003c/code\u003e: fix buffer leak when a \u003ccode\u003eThrowable\u003c/code\u003e is thrown during header encoding by \u003ca href=\"https://github.com/HwangRock\"\u003e\u003ccode\u003e@​HwangRock\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17089\"\u003enetty/netty#17089\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix direct memory OOM on low-core containers by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17166\"\u003enetty/netty#17166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: Fix the recvmmsg emulation by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17187\"\u003enetty/netty#17187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid classloader leak via GlobalEventExecutor terminationFuture failure by \u003ca href=\"https://github.com/seonwooj0810\"\u003e\u003ccode\u003e@​seonwooj0810\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17140\"\u003enetty/netty#17140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBrotliEncoder: Prevent duplicate close scheduling by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17175\"\u003enetty/netty#17175\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix JdkZlibDecompressor losing the tail of highly compressible streams by \u003ca href=\"https://github.com/renechoi\"\u003e\u003ccode\u003e@​renechoi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17191\"\u003enetty/netty#17191\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate compress-lzf to 1.2.1 by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17194\"\u003enetty/netty#17194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not write WebSocket handshake response to the tail of the pipeline by \u003ca href=\"https://github.com/el-psy-kongroo-d\"\u003e\u003ccode\u003e@​el-psy-kongroo-d\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17192\"\u003enetty/netty#17192\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eHttpServerCodec\u003c/code\u003e: do not consume the method queue for 1xx interim responses by \u003ca href=\"https://github.com/HwangRock\"\u003e\u003ccode\u003e@​HwangRock\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17182\"\u003enetty/netty#17182\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWeakly reference engines from the OpenSSL engine map by \u003ca href=\"https://github.com/bryce-anderson\"\u003e\u003ccode\u003e@​bryce-anderson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17199\"\u003enetty/netty#17199\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOpenSSL: Allow to obtain used named group via OpenSslSession by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17058\"\u003enetty/netty#17058\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.editorconfig\u003c/code\u003e to enforce consistent coding style by \u003ca href=\"https://github.com/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17052\"\u003enetty/netty#17052\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate surefire plugin to latest version by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17210\"\u003enetty/netty#17210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMerge changes from forks by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17213\"\u003enetty/netty#17213\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/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17007\"\u003enetty/netty#17007\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ChunMengLu\"\u003e\u003ccode\u003e@​ChunMengLu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17117\"\u003enetty/netty#17117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rajan-github\"\u003e\u003ccode\u003e@​rajan-github\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17106\"\u003enetty/netty#17106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seonwooj0810\"\u003e\u003ccode\u003e@​seonwooj0810\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17140\"\u003enetty/netty#17140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/renechoi\"\u003e\u003ccode\u003e@​renechoi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17191\"\u003enetty/netty#17191\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/netty/netty/commit/e0789d32c72f46fd2e7c99b6fdbbf7e2f4409e44\"\u003e\u003ccode\u003ee0789d3\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release netty-4.2.17.Final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/1b5abc6443b63726c72cdd285af2feb7ddbb8ff7\"\u003e\u003ccode\u003e1b5abc6\u003c/code\u003e\u003c/a\u003e Merge changes from forks (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17213\"\u003e#17213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/36fbf5788c73e7040e6f18fed841a2cdfcae1452\"\u003e\u003ccode\u003e36fbf57\u003c/code\u003e\u003c/a\u003e Update surefire plugin to latest version (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17210\"\u003e#17210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/a96226cb54e87e963e1e341cd7121f2217fc7c2e\"\u003e\u003ccode\u003ea96226c\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e.editorconfig\u003c/code\u003e to enforce consistent coding style (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17052\"\u003e#17052\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/14a4e6ad865a187c3f1bf0da18d9146472e18192\"\u003e\u003ccode\u003e14a4e6a\u003c/code\u003e\u003c/a\u003e OpenSSL: Allow to obtain used named group via OpenSslSession (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17058\"\u003e#17058\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/26255b123f7c699cd88cbdb42f6ecc6ed5cb7843\"\u003e\u003ccode\u003e26255b1\u003c/code\u003e\u003c/a\u003e Weakly reference engines from the OpenSSL engine map (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17199\"\u003e#17199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/ae414179e3a030e0747fb68648ff2433fa4539e1\"\u003e\u003ccode\u003eae41417\u003c/code\u003e\u003c/a\u003e \u003ccode\u003eHttpServerCodec\u003c/code\u003e: do not consume the method queue for 1xx interim responses ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/41f1db523d3657954e9ad12250004cbdfde2a97d\"\u003e\u003ccode\u003e41f1db5\u003c/code\u003e\u003c/a\u003e Do not write WebSocket handshake response to the tail of the pipeline (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17192\"\u003e#17192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/035d76e3f43fa462e101c1e03b59a69984c5ebf3\"\u003e\u003ccode\u003e035d76e\u003c/code\u003e\u003c/a\u003e Update compress-lzf to 1.2.1 (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17194\"\u003e#17194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/7681affcf120fca1de8554095216ddea20b408c5\"\u003e\u003ccode\u003e7681aff\u003c/code\u003e\u003c/a\u003e Fix JdkZlibDecompressor losing the tail of highly compressible streams (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17191\"\u003e#17191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.16.Final...netty-4.2.17.Final\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ch.qos.logback:logback-core` from 1.5.38 to 1.6.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qos-ch/logback/releases\"\u003ech.qos.logback:logback-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eLogback 1.6.3\u003c/h2\u003e\n\u003ch1\u003e2026-08-14 Release of logback version 1.6.3\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eIn response \u003ca href=\"https://www.cve.org/cverecord?id=CVE-2026-19880\"\u003eCVE-2026-19880\u003c/a\u003e,  \u003ccode\u003eMDCBasedDiscriminator\u003c/code\u003e (used by \u003ccode\u003eSiftingAppender\u003c/code\u003e) now strips forward and  backward slashes (\u003ccode\u003e/\u003c/code\u003e, \u003ccode\u003e\\\u003c/code\u003e) from MDC values before they are used as  discriminating keys. This prevents path segments from escaping into  destinations controlled by an attacker. When sanitisation actually changes a  value, a warning is emitted; the warning is rate-limited (a small batch, then  a lull of about ten minutes).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eColour console support is split out into a dedicated  \u003ca href=\"https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender\"\u003e\u003ccode\u003eJansiConsoleAppender\u003c/code\u003e\u003c/a\u003e. It wraps stdout or stderr with  Jansi so ANSI escape sequences (for example coloured patterns) render  correctly on terminals that need it, notably Windows. Prefer this class over  the older path described next. See the  \u003ca href=\"https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender\"\u003eappenders documentation\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe \u003ccode\u003ewithJansi\u003c/code\u003e property on \u003ccode\u003eConsoleAppender\u003c/code\u003e is \u003cstrong\u003edeprecated\u003c/strong\u003e. Existing  configurations that still set \u003ccode\u003e\u0026lt;withJansi\u0026gt;true\u0026lt;/withJansi\u0026gt;\u003c/code\u003e continue to work  for compatibility, but new setups should use \u003ccode\u003eJansiConsoleAppender\u003c/code\u003e instead.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eConsoleAppender\u003c/code\u003e no longer treats the process console as an exclusive  resource: stopping it does not close \u003ccode\u003eSystem.out\u003c/code\u003e / \u003ccode\u003eSystem.err\u003c/code\u003e.  \u003ccode\u003eJansiConsoleAppender\u003c/code\u003e pairs each \u003ccode\u003eAnsiConsole.systemInstall()\u003c/code\u003e with  \u003ccode\u003esystemUninstall()\u003c/code\u003e on stop, so repeated start/stop cycles do not leave Jansi  installed or tear down streams shared with the rest of the JVM. Related  behavior is covered by tests for  \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1063\"\u003eissues/1063\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eInvocation throttling helpers were reworked: \u003ccode\u003eSimpleInvocationGate\u003c/code\u003e is renamed  \u003ccode\u003eFixedIntervalInvocationGate\u003c/code\u003e, and \u003ccode\u003eBatchedFixedIntervalInvocationGate\u003c/code\u003e allows  a short burst of invocations before applying a fixed lull. The sanitisation\nwarning above uses the batched gate.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe JPMS \u003ccode\u003emodule-info\u003c/code\u003e for logback-core now exports the  \u003ccode\u003ech.qos.logback.core.property\u003c/code\u003e package, which had been missing from the module   descriptor.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eA bit-wise identical binary of this version can be reproduced by building from  \u003ca href=\"https://github.com/qos-ch/logback\"\u003esource code\u003c/a\u003e at commit  \u003ccode\u003ee8e824dede022a6d7208b36cfa875b0d1b7772f3\u003c/code\u003e associated with the tag \u003ccode\u003ev_1.6.3\u003c/code\u003e.  The release was built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29   under Linux Debian 11.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e--\nSponsoring SLF4J/logback/reload4j at \u003ca href=\"https://github.com/sponsors/qos-ch\"\u003ehttps://github.com/sponsors/qos-ch\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eLogback 1.6.2\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd\"\u003ehttps://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003e2026-08-10 Release of logback version 1.6.2\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eConfiguration analysis now detects \u003cem\u003econtradictory caller-data inclusion instructions\u003c/em\u003e. For example, an \u003ccode\u003eAsyncAppender\u003c/code\u003e, \u003ccode\u003eSocketAppender\u003c/code\u003e or \u003ccode\u003eSMTPAppender\u003c/code\u003e with \u003ccode\u003eincludeCallerData\u003c/code\u003e left at the default \u003ccode\u003efalse\u003c/code\u003e is incompatible with a layout or encoder pattern that uses a caller-data converter such as \u003ccode\u003e%C\u003c/code\u003e, \u003ccode\u003e%M\u003c/code\u003e, \u003ccode\u003e%L\u003c/code\u003e, \u003ccode\u003e%F\u003c/code\u003e, \u003ccode\u003e%l\u003c/code\u003e or \u003ccode\u003e%caller\u003c/code\u003e. At runtime those converters would print question marks and still incur extraction cost on a worker thread. Logback now emits a configuration-time warning when such instructions disagree. See \u003ca href=\"https://logback.qos.ch/codes.html#callerContradiction\"\u003ecodes.html#callerContradiction\u003c/a\u003e for details. This issue was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1059\"\u003eissues/1059\u003c/a\u003e by \u003ca href=\"https://github.com/leeychee\"\u003eleeychee\u003c/a\u003e. The initial analysis was contributed by \u003ca href=\"https://github.com/seonwooj0810\"\u003eseonwoo_jung\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCaller-contradiction analysis can be turned off by setting the \u003ccode\u003elogback.skipCallerContradictionAnalysis\u003c/code\u003e variable to \u003ccode\u003etrue\u003c/code\u003e, either as a system property (\u003ccode\u003e-Dlogback.skipCallerContradictionAnalysis=true\u003c/code\u003e) or as a property in the configuration file:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;property name=\u0026quot;logback.skipCallerContradictionAnalysis\u0026quot; value=\u0026quot;true\u0026quot;/\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eSimpleSocketServer\u003c/code\u003e and \u003ccode\u003eSimpleSSLSocketServer\u003c/code\u003e now require an explicit client IP whitelist. On the command line, pass one or more allowed addresses (single IPs or CIDR ranges) after the configuration file. An empty whitelist means no clients are accepted. When embedding the server programmatically, register allowed addresses with \u003ccode\u003eaddAllowedClientAddress(String)\u003c/code\u003e or \u003ccode\u003esetAllowedClientAddresses(Collection)\u003c/code\u003e before clients connect. See the documentation on \u003ca href=\"https://logback.qos.ch/manual/appenders.html#simpleSocketServerClientAccess\"\u003erestricting client access\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003eThrowableProxyVOBuilder\u003c/code\u003e for assembling a \u003ccode\u003eThrowableProxyVO\u003c/code\u003e field by field, with a corresponding \u003ccode\u003eThrowableProxyVO.builder()\u003c/code\u003e entry point.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDependency analysis handlers now run their \u003ccode\u003epostHandle\u003c/code\u003e method after child models have been processed, so checks that depend on nested appenders (such as caller-contradiction analysis) see a complete picture.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated several dependencies, including Angus Mail to 2.0.4 and Jetty (test) to 12.1.12.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eA bit-wise identical binary of this version can be reproduced by building from \u003ca href=\"https://github.com/qos-ch/logback\"\u003esource code\u003c/a\u003e at commit e3d78330ad1ba024fd987fd00c3ffb9cfcdb07dc associated with the tag \u003ccode\u003ev_1.6.2\u003c/code\u003e. The release was built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eLogback 1.6.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-07-28 Release of logback version 1.6.1\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In TimeBasedRollingPolicy, when the file option is set, the intermediate file renamed before asynchronous compression now receives the target archive name without the compression suffix (e.g. \u003ccode\u003e.gz\u003c/code\u003e, \u003ccode\u003e.zip\u003c/code\u003e, \u003ccode\u003e.xz\u003c/code\u003e). Previously it used a nanotime-based \u003ccode\u003e.tmp\u003c/code\u003e suffix. This makes the file easier to identify if compression fails during rollover. (See also the following paragraph.)\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/qos-ch/logback/commit/e8e824dede022a6d7208b36cfa875b0d1b7772f3\"\u003e\u003ccode\u003ee8e824d\u003c/code\u003e\u003c/a\u003e prepare release 1.6.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/761821bfaacac3a0ad44fa546cfc814429bf9312\"\u003e\u003ccode\u003e761821b\u003c/code\u003e\u003c/a\u003e MDCBasedDiscriminator has a gated warning mechanism\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/53ed1229008d8b1902f5c234deaa07d742890879\"\u003e\u003ccode\u003e53ed122\u003c/code\u003e\u003c/a\u003e update copyright year\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/c7e2db244671ffa916182b5da8c89579eb54a645\"\u003e\u003ccode\u003ec7e2db2\u003c/code\u003e\u003c/a\u003e rename SimpleInvocationGate as FixedIntervalInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/b5aa931b096a4b0b6a9e140b74fabe7da152cbf0\"\u003e\u003ccode\u003eb5aa931\u003c/code\u003e\u003c/a\u003e added BatchedSimpleInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/1f22af7686aadd25c08b4bd1e6943a906a743ad4\"\u003e\u003ccode\u003e1f22af7\u003c/code\u003e\u003c/a\u003e add javadocs to SimpleInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/638ffa7e7852478b605a91b3e91238ff26f8158c\"\u003e\u003ccode\u003e638ffa7\u003c/code\u003e\u003c/a\u003e prevent forward and backward slashes to escape to other directories\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/7d6b9a4f8c8996834c0a694f6c141705a003d7bb\"\u003e\u003ccode\u003e7d6b9a4\u003c/code\u003e\u003c/a\u003e add missing ch.qos.logback.core.property package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/fa25930346f35636fb6a077c1f66ebb06edd3b6f\"\u003e\u003ccode\u003efa25930\u003c/code\u003e\u003c/a\u003e add an extension path in ConsoleAppender for JansiConsoleAppender\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/c73b43f2011f9d4545abc7ea461172276a0a43b3\"\u003e\u003ccode\u003ec73b43f\u003c/code\u003e\u003c/a\u003e deprecate the withJansi path\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/qos-ch/logback/compare/v_1.5.38...v_1.6.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.google.guava:guava` from 33.6.0-jre to 33.7.1-jre\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/google/guava/releases\"\u003ecom.google.guava:guava's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e33.7.1\u003c/h2\u003e\n\u003ch3\u003eMaven\u003c/h3\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;dependency\u0026gt;\r\n  \u0026lt;groupId\u0026gt;com.google.guava\u0026lt;/groupId\u0026gt;\r\n  \u0026lt;artifactId\u0026gt;guava\u0026lt;/artifactId\u0026gt;\r\n  \u0026lt;version\u0026gt;33.7.1-jre\u0026lt;/version\u0026gt;\r\n  \u0026lt;!-- or, for Android: --\u0026gt;\r\n  \u0026lt;version\u0026gt;33.7.1-android\u0026lt;/version\u0026gt;\r\n\u0026lt;/dependency\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eJar files\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://repo1.maven.org/maven2/com/google/guava/guava/33.7.1-jre/guava-33.7.1-jre.jar\"\u003e33.7.1-jre.jar\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://repo1.maven.org/maven2/com/google/guava/guava/33.7.1-android/guava-33.7.1-android.jar\"\u003e33.7.1-android.jar\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eGuava requires \u003ca href=\"https://github.com/google/guava/wiki/UseGuavaInYourBuild#what-about-guavas-own-dependencies\"\u003eone runtime dependency\u003c/a\u003e, which you can download here:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://repo1.maven.org/maven2/com/google/guava/failureaccess/1.0.3/failureaccess-1.0.3.jar\"\u003efailureaccess-1.0.3.jar\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavadoc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://guava.dev/releases/33.7.1-jre/api/docs/\"\u003e33.7.1-jre\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://guava.dev/releases/33.7.1-android/api/docs/\"\u003e33.7.1-android\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJDiff\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://guava.dev/releases/33.7.1-jre/api/diffs/\"\u003e33.7.1-jre vs. 33.7.0-jre\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://guava.dev/releases/33.7.1-android/api/diffs/\"\u003e33.7.1-android vs. 33.7.0-android\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://guava.dev/releases/33.7.1-android/api/androiddiffs/\"\u003e33.7.1-android vs. 33.7.1-jre\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog\u003c/h3\u003e\n\u003cp\u003eGuava 33.7.1 removes the \u003ccode\u003eMulti-Release\u003c/code\u003e line from our jar manifest, fixing an issue under Java 9 and 10 that was introduced to \u003ccode\u003eguava-jre\u003c/code\u003e in \u003ca href=\"https://github.com/google/guava/releases/tag/v33.7.0\"\u003eversion 33.7.0\u003c/a\u003e. Sorry for the trouble.\u003c/p\u003e\n\u003ch2\u003e33.7.0\u003c/h2\u003e\n\u003ch3\u003eNewly introduced problem for Java 9 and Java 10 only\u003c/h3\u003e\n\u003cp\u003eGuava 33.7.0 includes a \u003ccode\u003eMulti-Release\u003c/code\u003e line in its jar manifest, even though it is no longer a multi-release jar. This causes \u003ca href=\"https://redirect.github.com/google/guava/issues/8614\"\u003esome problems with tools from Java 9 and Java 10\u003c/a\u003e. The issue is fixed in \u003ca href=\"https://github.com/google/guava/releases/tag/v33.7.1\"\u003eversion 33.7.1\u003c/a\u003e. Sorry for the trouble.\u003c/p\u003e\n\u003ch3\u003eMaven\u003c/h3\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;dependency\u0026gt;\r\n  \u0026lt;groupId\u0026gt;com.google.guava\u0026lt;/groupId\u0026gt;\r\n  \u0026lt;artifactId\u0026gt;guava\u0026lt;/artifactId\u0026gt;\r\n  \u0026lt;version\u0026gt;33.7.0-jre\u0026lt;/version\u0026gt;\r\n  \u0026lt;!-- or, for Android: --\u0026gt;\r\n\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/google/guava/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `commons-codec:commons-codec` from 1.22.0 to 1.22.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/commons-codec/blob/master/RELEASE-NOTES.txt\"\u003ecommons-codec:commons-codec's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eApache Commons Codec 1.22.1 Release Notes\u003c/h2\u003e\n\u003cp\u003eThe Apache Commons Codec team is pleased to announce the release of Apache Commons Codec 1.22.1.\u003c/p\u003e\n\u003cp\u003eThe Apache Commons Codec component contains encoders and decoders for\nformats such as Base16, Base32, Base64, digest, and Hexadecimal. In addition to these\nwidely used encoders and decoders, the codec package also maintains a\ncollection of phonetic encoding utilities.\u003c/p\u003e\n\u003cp\u003eThis is a feature and maintenance release. Java 8 or later is required.\u003c/p\u003e\n\u003ch2\u003eFixed Bugs\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCODEC-344:  Base64.Builder.setEncodeTable(byte...) accepts invalid custom alphabets. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-340:  Base58.Builder.setEncodeTable(byte...) is ignored when encoding and decoding. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-342:  Base32.Builder.setEncodeTable(byte...) can create a codec that cannot decode its own output. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-343:  Base32.Builder.setHexDecodeTable(boolean) sets the encode table to a decode lookup table. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-341:  Base16.Builder.setEncodeTable(byte...) can create a codec that cannot decode its own output. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-339:  URLCodec.encodeUrl(BitSet, byte[]) allows custom safe sets to emit URL encoding control characters. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-338:  PercentCodec loses literal '+' when plusForSpace is enabled. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-337:  Digest ALL reuses System.in, so only the first algorithm sees the real input (\u003ca href=\"https://redirect.github.com/apache/commons-codec/issues/431\"\u003e#431\u003c/a\u003e). Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Fix Base64.toIntegerBytes(BigInteger) for zero edge case ([#441](https://github.com/apache/commons-codec/issues/441)). Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Add messages when throwing NullPointerException. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Add messages when throwing NullPointerException. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        StringEncoderComparator.StringEncoderComparator(StringEncoder) now fails fast on null input. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Bump org.apache.commons:commons-parent from 98 to 103. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Bump commons-io:commons-io from 2.21.0 to 2.22.0. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor complete information on Apache Commons Codec, including instructions on how to submit bug reports,\npatches, or suggestions for improvement, see the Apache Commons Codec website:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://commons.apache.org/proper/commons-codec/\"\u003ehttps://commons.apache.org/proper/commons-codec/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDownload page: \u003ca href=\"https://commons.apache.org/proper/commons-codec/download_codec.cgi\"\u003ehttps://commons.apache.org/proper/commons-codec/download_codec.cgi\u003c/a\u003e\u003c/p\u003e\n\u003chr /\u003e\n\u003c/blockquote\u003e\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-codec/commit/dc8f6c832a30f524bf12a5ae7ab013e4ad7c088f\"\u003e\u003ccode\u003edc8f6c8\u003c/code\u003e\u003c/a\u003e Prepare for the release candidate 1.22.1 RC1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/8203c1c5bb4342e2fbf258556cac4826eae7ca11\"\u003e\u003ccode\u003e8203c1c\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-codec/commit/5647fe2a66b3e74f044f414ad10d92407ede9396\"\u003e\u003ccode\u003e5647fe2\u003c/code\u003e\u003c/a\u003e StringEncoderComparator.StringEncoderComparator(StringEncoder) now fails\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/00c27a9c0636f15a0ba1d0bdc1f00fb8d9cee0fd\"\u003e\u003ccode\u003e00c27a9\u003c/code\u003e\u003c/a\u003e Reduce vertical whitespace\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/568f2d7d7cf24ff0074eec29e21868ce9fe24236\"\u003e\u003ccode\u003e568f2d7\u003c/code\u003e\u003c/a\u003e Remove unused method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/316fb15f3aa1e810a27fcc858d7c0e7ba0a4d724\"\u003e\u003ccode\u003e316fb15\u003c/code\u003e\u003c/a\u003e Remove unused method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/bf6b543c1d49bf36d9ee10de1a1472dc5d677b10\"\u003e\u003ccode\u003ebf6b543\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 7.0.0 to 7.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/e14cdfe55f4837b63daca367374ce996ad87fc5a\"\u003e\u003ccode\u003ee14cdfe\u003c/code\u003e\u003c/a\u003e Extract redundant code.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/3351e63155fa41fbfcb0744efa960adce1529798\"\u003e\u003ccode\u003e3351e63\u003c/code\u003e\u003c/a\u003e Add messages when throwing NullPointerException.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/f22dab7ea52e8bd07dfa84a6f37ce915d1536b1c\"\u003e\u003ccode\u003ef22dab7\u003c/code\u003e\u003c/a\u003e Update SCM tag\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/commons-codec/compare/rel/commons-codec-1.22.0...rel/commons-codec-1.22.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-core` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-netty-shaded` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-netty-shaded's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-netty-shaded` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-netty-shaded's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.smallrye.common:smallrye-common-annotation` from 2.19.0 to 2.20.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/defd310a881f1c168e958f8f73fc7c6518499a4e\"\u003e\u003ccode\u003edefd310\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/ffc98f68f60160620b1156b233dd650104f09862\"\u003e\u003ccode\u003effc98f6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/581\"\u003e#581\u003c/a\u003e from smallrye/release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/7cf7fcc86bddc8a9e96f14a34ac292e617d0202b\"\u003e\u003ccode\u003e7cf7fcc\u003c/code\u003e\u003c/a\u003e Release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/e6f3c592559944617e16f008f1d1ac3285fcef75\"\u003e\u003ccod...\n\n_Description has been truncated_","html_url":"https://github.com/jetty/jetty.project/pull/15655","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jetty%2Fjetty.project/issues/15655","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/15655/packages"},{"uuid":"5199617559","node_id":"PR_kwDOAB81F88AAAABAXgZXQ","number":15624,"state":"closed","title":"[12.0.x EE8] Bump the dev-dependencies group across 1 directory with 18 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-08-22T00:25:13.000Z","author_association":null,"state_reason":null,"created_at":"2026-08-20T04:16:13.000Z","updated_at":"2026-08-22T00:25:13.000Z","time_to_close":158940,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[12.0.x EE8] Bump","group_name":"dev-dependencies","update_count":18,"packages":[{"name":"org.conscrypt:conscrypt-openjdk-uber","old_version":"2.6.0","new_version":"2.6.2","repository_url":"https://github.com/google/conscrypt"},{"name":"com.fasterxml.jackson:jackson-bom","old_version":"2.22.1","new_version":"2.22.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"io.netty:netty-bom","old_version":"4.2.16.Final","new_version":"4.2.17.Final","repository_url":"https://github.com/netty/netty"},{"name":"ch.qos.logback:logback-core","old_version":"1.5.38","new_version":"1.6.3","repository_url":"https://github.com/qos-ch/logback"},{"name":"commons-codec:commons-codec","old_version":"1.22.0","new_version":"1.22.1","repository_url":"https://github.com/apache/commons-codec"},{"name":"io.grpc:grpc-core","old_version":"1.82.2","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc-java"},{"name":"io.grpc:grpc-netty-shaded","old_version":"1.82.2","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc-java"},{"name":"io.smallrye.common:smallrye-common-annotation","old_version":"2.19.0","new_version":"2.20.0","repository_url":"https://github.com/smallrye/smallrye-common"},{"name":"io.smallrye.common:smallrye-common-cpu","old_version":"2.19.0","new_version":"2.20.0","repository_url":"https://github.com/smallrye/smallrye-common"},{"name":"org.bouncycastle:bctls-jdk18on","old_version":"1.84","new_version":"1.85","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.eclipse.sisu:org.eclipse.sisu.inject","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/eclipse-sisu/sisu-project"},{"name":"org.eclipse.sisu:org.eclipse.sisu.plexus","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/eclipse-sisu/sisu-project"},{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.9","new_version":"3.5.10","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.eclipse.jetty.toolchain:jetty-build-support","old_version":"1.5","new_version":"1.6"},{"name":"eu.maveniverse.maven.njord:extension3","old_version":"0.9.9","new_version":"0.9.10","repository_url":"https://github.com/maveniverse/njord"},{"name":"eu.maveniverse.maven.plugins:njord","old_version":"0.9.9","new_version":"0.9.10","repository_url":"https://github.com/maveniverse/njord"},{"name":"org.apache.maven.extensions:maven-build-cache-extension","old_version":"1.2.3","new_version":"1.3.0","repository_url":"https://github.com/apache/maven-build-cache-extension"},{"name":"org.cyclonedx:cyclonedx-maven-plugin","old_version":"2.9.2","new_version":"2.9.3","repository_url":"https://github.com/CycloneDX/cyclonedx-maven-plugin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the dev-dependencies group with 18 updates in the /jetty-ee8 directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.conscrypt:conscrypt-openjdk-uber](https://github.com/google/conscrypt) | `2.6.0` | `2.6.2` |\n| [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `2.22.1` | `2.22.2` |\n| [io.netty:netty-bom](https://github.com/netty/netty) | `4.2.16.Final` | `4.2.17.Final` |\n| [ch.qos.logback:logback-core](https://github.com/qos-ch/logback) | `1.5.38` | `1.6.3` |\n| [commons-codec:commons-codec](https://github.com/apache/commons-codec) | `1.22.0` | `1.22.1` |\n| [io.grpc:grpc-core](https://github.com/grpc/grpc-java) | `1.82.2` | `1.83.1` |\n| [io.grpc:grpc-netty-shaded](https://github.com/grpc/grpc-java) | `1.82.2` | `1.83.1` |\n| [io.smallrye.common:smallrye-common-annotation](https://github.com/smallrye/smallrye-common) | `2.19.0` | `2.20.0` |\n| [io.smallrye.common:smallrye-common-cpu](https://github.com/smallrye/smallrye-common) | `2.19.0` | `2.20.0` |\n| [org.bouncycastle:bctls-jdk18on](https://github.com/bcgit/bc-java) | `1.84` | `1.85` |\n| [org.eclipse.sisu:org.eclipse.sisu.inject](https://github.com/eclipse-sisu/sisu-project) | `1.0.1` | `1.1.0` |\n| [org.eclipse.sisu:org.eclipse.sisu.plexus](https://github.com/eclipse-sisu/sisu-project) | `1.0.1` | `1.1.0` |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.9` | `3.5.10` |\n| org.eclipse.jetty.toolchain:jetty-build-support | `1.5` | `1.6` |\n| [eu.maveniverse.maven.njord:extension3](https://github.com/maveniverse/njord) | `0.9.9` | `0.9.10` |\n| [eu.maveniverse.maven.plugins:njord](https://github.com/maveniverse/njord) | `0.9.9` | `0.9.10` |\n| [org.apache.maven.extensions:maven-build-cache-extension](https://github.com/apache/maven-build-cache-extension) | `1.2.3` | `1.3.0` |\n| [org.cyclonedx:cyclonedx-maven-plugin](https://github.com/CycloneDX/cyclonedx-maven-plugin) | `2.9.2` | `2.9.3` |\n\n\nUpdates `org.conscrypt:conscrypt-openjdk-uber` from 2.6.0 to 2.6.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/google/conscrypt/releases\"\u003eorg.conscrypt:conscrypt-openjdk-uber's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.6.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1526\"\u003egoogle/conscrypt#1526\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNow only requires GLIBC_2.14, which fixes \u003ca href=\"https://redirect.github.com/robolectric/robolectric/issues/11362\"\u003erobolectric/robolectric#11362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.6.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1519\"\u003egoogle/conscrypt#1519\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1499#issuecomment-4923001123\"\u003egoogle/conscrypt#1499\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/google/conscrypt/commit/657e1c64c46961bcc48e7302e42ebc02d6632645\"\u003e\u003ccode\u003e657e1c6\u003c/code\u003e\u003c/a\u003e Use an Ubuntu 20.04 container to build Concrypt on GitHub CI, and make Make a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/44a36308a64e3f872192baabd7c3b5819dc618a2\"\u003e\u003ccode\u003e44a3630\u003c/code\u003e\u003c/a\u003e Close contexts after each test in SSLEngineVersionCompatibilityTest. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1524\"\u003e#1524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/5bdcae0fe8aeb92009eba087969aed7f0ae0e167\"\u003e\u003ccode\u003e5bdcae0\u003c/code\u003e\u003c/a\u003e Project import generated by Copybara. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1523\"\u003e#1523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/6135d6016b052477efe689fd98e5fca9b5325eed\"\u003e\u003ccode\u003e6135d60\u003c/code\u003e\u003c/a\u003e Project import generated by Copybara. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1522\"\u003e#1522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/google/conscrypt/compare/2.6.0...2.6.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.22.1 to 2.22.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/062d76d67a3619238e00d4d62f9bdb51cfe6cd52\"\u003e\u003ccode\u003e062d76d\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/dcf18f79fa8a9b935d880b3906291d8ed8cb1d0d\"\u003e\u003ccode\u003edcf18f7\u003c/code\u003e\u003c/a\u003e Prep for 2.22.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/9688c7b1dfc9072fdec7c9770653072d0a728fd1\"\u003e\u003ccode\u003e9688c7b\u003c/code\u003e\u003c/a\u003e Merge branch '2.21' into 2.22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7796a7ddb240ce41c1b6c6a3a435b29948a6a727\"\u003e\u003ccode\u003e7796a7d\u003c/code\u003e\u003c/a\u003e Merge branch '2.20' into 2.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/d3cd7fc1794f6d1a9f0a4dee41d8d46a310741d7\"\u003e\u003ccode\u003ed3cd7fc\u003c/code\u003e\u003c/a\u003e Merge branch '2.19' into 2.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7a28068902087b3c407d2dcabd875d7593127d97\"\u003e\u003ccode\u003e7a28068\u003c/code\u003e\u003c/a\u003e Merge branch '2.18' into 2.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/51eb4657b141f598bb285763ac42492bd23a1da3\"\u003e\u003ccode\u003e51eb465\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/34ff5e8c68b0712086794b8287d0ad643a0a1993\"\u003e\u003ccode\u003e34ff5e8\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-bom/commit/0b44a458b999c5ac5568e2a4b1190a7d1080038e\"\u003e\u003ccode\u003e0b44a45\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.18.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/691ec93ce7c1fcc582a2a44348e82e91ca424098\"\u003e\u003ccode\u003e691ec93\u003c/code\u003e\u003c/a\u003e Prep for 2.18.10 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.22.1...jackson-bom-2.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.netty:netty-bom` from 4.2.16.Final to 4.2.17.Final\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/netty/netty/releases\"\u003eio.netty:netty-bom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enetty-4.2.17.Final\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAsciiString.cached(String) should sanitize the provided String (\u003ca href=\"https://redirect.github.com/netty/netty/issues/13749\"\u003e#13749\u003c/a\u003e) by \u003ca href=\"https://github.com/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17007\"\u003enetty/netty#17007\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deploy workflow by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17071\"\u003enetty/netty#17071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix AsciiString.cached(String) performance regression by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17074\"\u003enetty/netty#17074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSslHandler: Fix possible buffer leak when an OOME is thrown during allocation by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17059\"\u003enetty/netty#17059\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leak presence detector in leak profile by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17073\"\u003enetty/netty#17073\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd HttpContentCompressor constructor with ability to specify desired maxPipelineDepth by \u003ca href=\"https://github.com/reta\"\u003e\u003ccode\u003e@​reta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17068\"\u003enetty/netty#17068\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: preserve readPending when rescheduling cancelled reads by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17087\"\u003enetty/netty#17087\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject negative maxOrder in PooledByteBufAllocator by \u003ca href=\"https://github.com/coderbruis\"\u003e\u003ccode\u003e@​coderbruis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17093\"\u003enetty/netty#17093\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix AdaptiveByteBuf._setLongLE calling checked setLongLE by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17098\"\u003enetty/netty#17098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSnappy: Guard decoder against invalid chunk lengths by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17099\"\u003enetty/netty#17099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix OCSP Tests by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17114\"\u003enetty/netty#17114\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate to latest netty-tcnative release by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17056\"\u003enetty/netty#17056\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse safe decompressor in Lz4FrameDecoder by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17118\"\u003enetty/netty#17118\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConfigure TestLens for the PR builds by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17129\"\u003enetty/netty#17129\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: add SO_INQ support for Unix domain sockets by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17127\"\u003enetty/netty#17127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(mqtt): drop UNSUBACK reason codes for MQTT 3.x encoding by \u003ca href=\"https://github.com/ChunMengLu\"\u003e\u003ccode\u003e@​ChunMengLu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17117\"\u003enetty/netty#17117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePropagate the CI envionment variables through to the docker builds by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17138\"\u003enetty/netty#17138\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add decompressor API by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16745\"\u003enetty/netty#16745\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix silent failures and optimize error short-circuit in multi-threaded tests by \u003ca href=\"https://github.com/rajan-github\"\u003e\u003ccode\u003e@​rajan-github\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17106\"\u003enetty/netty#17106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Bzip2Decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17145\"\u003enetty/netty#17145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix buddy cache evicting chunks with live buffers by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17154\"\u003enetty/netty#17154\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Snappy frame decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17153\"\u003enetty/netty#17153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add zlib decompressors by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17155\"\u003enetty/netty#17155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Zstd decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17152\"\u003enetty/netty#17152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add LZF decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17147\"\u003enetty/netty#17147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add BrotliDecompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17146\"\u003enetty/netty#17146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Lz4FrameDecompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17148\"\u003enetty/netty#17148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eHttpObjectEncoder\u003c/code\u003e / \u003ccode\u003eDefaultHttp2FrameWriter\u003c/code\u003e: fix buffer leak when a \u003ccode\u003eThrowable\u003c/code\u003e is thrown during header encoding by \u003ca href=\"https://github.com/HwangRock\"\u003e\u003ccode\u003e@​HwangRock\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17089\"\u003enetty/netty#17089\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix direct memory OOM on low-core containers by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17166\"\u003enetty/netty#17166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: Fix the recvmmsg emulation by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17187\"\u003enetty/netty#17187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid classloader leak via GlobalEventExecutor terminationFuture failure by \u003ca href=\"https://github.com/seonwooj0810\"\u003e\u003ccode\u003e@​seonwooj0810\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17140\"\u003enetty/netty#17140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBrotliEncoder: Prevent duplicate close scheduling by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17175\"\u003enetty/netty#17175\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix JdkZlibDecompressor losing the tail of highly compressible streams by \u003ca href=\"https://github.com/renechoi\"\u003e\u003ccode\u003e@​renechoi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17191\"\u003enetty/netty#17191\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate compress-lzf to 1.2.1 by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17194\"\u003enetty/netty#17194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not write WebSocket handshake response to the tail of the pipeline by \u003ca href=\"https://github.com/el-psy-kongroo-d\"\u003e\u003ccode\u003e@​el-psy-kongroo-d\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17192\"\u003enetty/netty#17192\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eHttpServerCodec\u003c/code\u003e: do not consume the method queue for 1xx interim responses by \u003ca href=\"https://github.com/HwangRock\"\u003e\u003ccode\u003e@​HwangRock\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17182\"\u003enetty/netty#17182\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWeakly reference engines from the OpenSSL engine map by \u003ca href=\"https://github.com/bryce-anderson\"\u003e\u003ccode\u003e@​bryce-anderson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17199\"\u003enetty/netty#17199\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOpenSSL: Allow to obtain used named group via OpenSslSession by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17058\"\u003enetty/netty#17058\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.editorconfig\u003c/code\u003e to enforce consistent coding style by \u003ca href=\"https://github.com/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17052\"\u003enetty/netty#17052\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate surefire plugin to latest version by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17210\"\u003enetty/netty#17210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMerge changes from forks by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17213\"\u003enetty/netty#17213\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/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17007\"\u003enetty/netty#17007\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ChunMengLu\"\u003e\u003ccode\u003e@​ChunMengLu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17117\"\u003enetty/netty#17117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rajan-github\"\u003e\u003ccode\u003e@​rajan-github\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17106\"\u003enetty/netty#17106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seonwooj0810\"\u003e\u003ccode\u003e@​seonwooj0810\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17140\"\u003enetty/netty#17140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/renechoi\"\u003e\u003ccode\u003e@​renechoi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17191\"\u003enetty/netty#17191\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/netty/netty/commit/e0789d32c72f46fd2e7c99b6fdbbf7e2f4409e44\"\u003e\u003ccode\u003ee0789d3\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release netty-4.2.17.Final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/1b5abc6443b63726c72cdd285af2feb7ddbb8ff7\"\u003e\u003ccode\u003e1b5abc6\u003c/code\u003e\u003c/a\u003e Merge changes from forks (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17213\"\u003e#17213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/36fbf5788c73e7040e6f18fed841a2cdfcae1452\"\u003e\u003ccode\u003e36fbf57\u003c/code\u003e\u003c/a\u003e Update surefire plugin to latest version (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17210\"\u003e#17210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/a96226cb54e87e963e1e341cd7121f2217fc7c2e\"\u003e\u003ccode\u003ea96226c\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e.editorconfig\u003c/code\u003e to enforce consistent coding style (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17052\"\u003e#17052\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/14a4e6ad865a187c3f1bf0da18d9146472e18192\"\u003e\u003ccode\u003e14a4e6a\u003c/code\u003e\u003c/a\u003e OpenSSL: Allow to obtain used named group via OpenSslSession (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17058\"\u003e#17058\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/26255b123f7c699cd88cbdb42f6ecc6ed5cb7843\"\u003e\u003ccode\u003e26255b1\u003c/code\u003e\u003c/a\u003e Weakly reference engines from the OpenSSL engine map (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17199\"\u003e#17199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/ae414179e3a030e0747fb68648ff2433fa4539e1\"\u003e\u003ccode\u003eae41417\u003c/code\u003e\u003c/a\u003e \u003ccode\u003eHttpServerCodec\u003c/code\u003e: do not consume the method queue for 1xx interim responses ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/41f1db523d3657954e9ad12250004cbdfde2a97d\"\u003e\u003ccode\u003e41f1db5\u003c/code\u003e\u003c/a\u003e Do not write WebSocket handshake response to the tail of the pipeline (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17192\"\u003e#17192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/035d76e3f43fa462e101c1e03b59a69984c5ebf3\"\u003e\u003ccode\u003e035d76e\u003c/code\u003e\u003c/a\u003e Update compress-lzf to 1.2.1 (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17194\"\u003e#17194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/7681affcf120fca1de8554095216ddea20b408c5\"\u003e\u003ccode\u003e7681aff\u003c/code\u003e\u003c/a\u003e Fix JdkZlibDecompressor losing the tail of highly compressible streams (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17191\"\u003e#17191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.16.Final...netty-4.2.17.Final\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ch.qos.logback:logback-core` from 1.5.38 to 1.6.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qos-ch/logback/releases\"\u003ech.qos.logback:logback-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eLogback 1.6.3\u003c/h2\u003e\n\u003ch1\u003e2026-08-14 Release of logback version 1.6.3\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eIn response \u003ca href=\"https://www.cve.org/cverecord?id=CVE-2026-19880\"\u003eCVE-2026-19880\u003c/a\u003e,  \u003ccode\u003eMDCBasedDiscriminator\u003c/code\u003e (used by \u003ccode\u003eSiftingAppender\u003c/code\u003e) now strips forward and  backward slashes (\u003ccode\u003e/\u003c/code\u003e, \u003ccode\u003e\\\u003c/code\u003e) from MDC values before they are used as  discriminating keys. This prevents path segments from escaping into  destinations controlled by an attacker. When sanitisation actually changes a  value, a warning is emitted; the warning is rate-limited (a small batch, then  a lull of about ten minutes).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eColour console support is split out into a dedicated  \u003ca href=\"https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender\"\u003e\u003ccode\u003eJansiConsoleAppender\u003c/code\u003e\u003c/a\u003e. It wraps stdout or stderr with  Jansi so ANSI escape sequences (for example coloured patterns) render  correctly on terminals that need it, notably Windows. Prefer this class over  the older path described next. See the  \u003ca href=\"https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender\"\u003eappenders documentation\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe \u003ccode\u003ewithJansi\u003c/code\u003e property on \u003ccode\u003eConsoleAppender\u003c/code\u003e is \u003cstrong\u003edeprecated\u003c/strong\u003e. Existing  configurations that still set \u003ccode\u003e\u0026lt;withJansi\u0026gt;true\u0026lt;/withJansi\u0026gt;\u003c/code\u003e continue to work  for compatibility, but new setups should use \u003ccode\u003eJansiConsoleAppender\u003c/code\u003e instead.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eConsoleAppender\u003c/code\u003e no longer treats the process console as an exclusive  resource: stopping it does not close \u003ccode\u003eSystem.out\u003c/code\u003e / \u003ccode\u003eSystem.err\u003c/code\u003e.  \u003ccode\u003eJansiConsoleAppender\u003c/code\u003e pairs each \u003ccode\u003eAnsiConsole.systemInstall()\u003c/code\u003e with  \u003ccode\u003esystemUninstall()\u003c/code\u003e on stop, so repeated start/stop cycles do not leave Jansi  installed or tear down streams shared with the rest of the JVM. Related  behavior is covered by tests for  \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1063\"\u003eissues/1063\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eInvocation throttling helpers were reworked: \u003ccode\u003eSimpleInvocationGate\u003c/code\u003e is renamed  \u003ccode\u003eFixedIntervalInvocationGate\u003c/code\u003e, and \u003ccode\u003eBatchedFixedIntervalInvocationGate\u003c/code\u003e allows  a short burst of invocations before applying a fixed lull. The sanitisation\nwarning above uses the batched gate.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe JPMS \u003ccode\u003emodule-info\u003c/code\u003e for logback-core now exports the  \u003ccode\u003ech.qos.logback.core.property\u003c/code\u003e package, which had been missing from the module   descriptor.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eA bit-wise identical binary of this version can be reproduced by building from  \u003ca href=\"https://github.com/qos-ch/logback\"\u003esource code\u003c/a\u003e at commit  \u003ccode\u003ee8e824dede022a6d7208b36cfa875b0d1b7772f3\u003c/code\u003e associated with the tag \u003ccode\u003ev_1.6.3\u003c/code\u003e.  The release was built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29   under Linux Debian 11.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eLogback 1.6.2\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd\"\u003ehttps://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003e2026-08-10 Release of logback version 1.6.2\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eConfiguration analysis now detects \u003cem\u003econtradictory caller-data inclusion instructions\u003c/em\u003e. For example, an \u003ccode\u003eAsyncAppender\u003c/code\u003e, \u003ccode\u003eSocketAppender\u003c/code\u003e or \u003ccode\u003eSMTPAppender\u003c/code\u003e with \u003ccode\u003eincludeCallerData\u003c/code\u003e left at the default \u003ccode\u003efalse\u003c/code\u003e is incompatible with a layout or encoder pattern that uses a caller-data converter such as \u003ccode\u003e%C\u003c/code\u003e, \u003ccode\u003e%M\u003c/code\u003e, \u003ccode\u003e%L\u003c/code\u003e, \u003ccode\u003e%F\u003c/code\u003e, \u003ccode\u003e%l\u003c/code\u003e or \u003ccode\u003e%caller\u003c/code\u003e. At runtime those converters would print question marks and still incur extraction cost on a worker thread. Logback now emits a configuration-time warning when such instructions disagree. See \u003ca href=\"https://logback.qos.ch/codes.html#callerContradiction\"\u003ecodes.html#callerContradiction\u003c/a\u003e for details. This issue was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1059\"\u003eissues/1059\u003c/a\u003e by \u003ca href=\"https://github.com/leeychee\"\u003eleeychee\u003c/a\u003e. The initial analysis was contributed by \u003ca href=\"https://github.com/seonwooj0810\"\u003eseonwoo_jung\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCaller-contradiction analysis can be turned off by setting the \u003ccode\u003elogback.skipCallerContradictionAnalysis\u003c/code\u003e variable to \u003ccode\u003etrue\u003c/code\u003e, either as a system property (\u003ccode\u003e-Dlogback.skipCallerContradictionAnalysis=true\u003c/code\u003e) or as a property in the configuration file:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;property name=\u0026quot;logback.skipCallerContradictionAnalysis\u0026quot; value=\u0026quot;true\u0026quot;/\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eSimpleSocketServer\u003c/code\u003e and \u003ccode\u003eSimpleSSLSocketServer\u003c/code\u003e now require an explicit client IP whitelist. On the command line, pass one or more allowed addresses (single IPs or CIDR ranges) after the configuration file. An empty whitelist means no clients are accepted. When embedding the server programmatically, register allowed addresses with \u003ccode\u003eaddAllowedClientAddress(String)\u003c/code\u003e or \u003ccode\u003esetAllowedClientAddresses(Collection)\u003c/code\u003e before clients connect. See the documentation on \u003ca href=\"https://logback.qos.ch/manual/appenders.html#simpleSocketServerClientAccess\"\u003erestricting client access\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003eThrowableProxyVOBuilder\u003c/code\u003e for assembling a \u003ccode\u003eThrowableProxyVO\u003c/code\u003e field by field, with a corresponding \u003ccode\u003eThrowableProxyVO.builder()\u003c/code\u003e entry point.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDependency analysis handlers now run their \u003ccode\u003epostHandle\u003c/code\u003e method after child models have been processed, so checks that depend on nested appenders (such as caller-contradiction analysis) see a complete picture.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated several dependencies, including Angus Mail to 2.0.4 and Jetty (test) to 12.1.12.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eA bit-wise identical binary of this version can be reproduced by building from \u003ca href=\"https://github.com/qos-ch/logback\"\u003esource code\u003c/a\u003e at commit e3d78330ad1ba024fd987fd00c3ffb9cfcdb07dc associated with the tag \u003ccode\u003ev_1.6.2\u003c/code\u003e. The release was built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eLogback 1.6.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-07-28 Release of logback version 1.6.1\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In TimeBasedRollingPolicy, when the file option is set, the intermediate file renamed before asynchronous compression now receives the target archive name without the compression suffix (e.g. \u003ccode\u003e.gz\u003c/code\u003e, \u003ccode\u003e.zip\u003c/code\u003e, \u003ccode\u003e.xz\u003c/code\u003e). Previously it used a nanotime-based \u003ccode\u003e.tmp\u003c/code\u003e suffix. This makes the file easier to identify if compression fails during rollover. (See also the following paragraph.)\u003c/p\u003e\n\u003cp\u003e• On GZ, ZIP, or XZ compression failure, the original (uncompressed) log file is no longer deleted. Compression strategies now delete the source file only after successful compression and emit a warning that the original was left intact.\u003c/p\u003e\n\u003cp\u003e• ConsoleAppender with \u003c!-- raw HTML omitted --\u003e now probes JLine's org.jline.jansi.AnsiConsole first and falls back to the legacy FuseSource org.fusesource.jansi.AnsiConsole class. This keeps ANSI coloring working after Jansi moved under the JLine project. The optional org.jline:jansi-core artifact is declared as a dependency alongside the existing FuseSource jansi dependency. A preferredJansiClassName property was added for tests. This issue was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1043\"\u003eissues/1043\u003c/a\u003e by \u003ca href=\"https://github.com/seonwooj0810\"\u003eseonwoo_jung\u003c/a\u003e who also provided the relevant PR.\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/qos-ch/logback/commit/e8e824dede022a6d7208b36cfa875b0d1b7772f3\"\u003e\u003ccode\u003ee8e824d\u003c/code\u003e\u003c/a\u003e prepare release 1.6.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/761821bfaacac3a0ad44fa546cfc814429bf9312\"\u003e\u003ccode\u003e761821b\u003c/code\u003e\u003c/a\u003e MDCBasedDiscriminator has a gated warning mechanism\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/53ed1229008d8b1902f5c234deaa07d742890879\"\u003e\u003ccode\u003e53ed122\u003c/code\u003e\u003c/a\u003e update copyright year\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/c7e2db244671ffa916182b5da8c89579eb54a645\"\u003e\u003ccode\u003ec7e2db2\u003c/code\u003e\u003c/a\u003e rename SimpleInvocationGate as FixedIntervalInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/b5aa931b096a4b0b6a9e140b74fabe7da152cbf0\"\u003e\u003ccode\u003eb5aa931\u003c/code\u003e\u003c/a\u003e added BatchedSimpleInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/1f22af7686aadd25c08b4bd1e6943a906a743ad4\"\u003e\u003ccode\u003e1f22af7\u003c/code\u003e\u003c/a\u003e add javadocs to SimpleInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/638ffa7e7852478b605a91b3e91238ff26f8158c\"\u003e\u003ccode\u003e638ffa7\u003c/code\u003e\u003c/a\u003e prevent forward and backward slashes to escape to other directories\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/7d6b9a4f8c8996834c0a694f6c141705a003d7bb\"\u003e\u003ccode\u003e7d6b9a4\u003c/code\u003e\u003c/a\u003e add missing ch.qos.logback.core.property package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/fa25930346f35636fb6a077c1f66ebb06edd3b6f\"\u003e\u003ccode\u003efa25930\u003c/code\u003e\u003c/a\u003e add an extension path in ConsoleAppender for JansiConsoleAppender\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/c73b43f2011f9d4545abc7ea461172276a0a43b3\"\u003e\u003ccode\u003ec73b43f\u003c/code\u003e\u003c/a\u003e deprecate the withJansi path\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/qos-ch/logback/compare/v_1.5.38...v_1.6.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `commons-codec:commons-codec` from 1.22.0 to 1.22.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/commons-codec/blob/master/RELEASE-NOTES.txt\"\u003ecommons-codec:commons-codec's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eApache Commons Codec 1.22.1 Release Notes\u003c/h2\u003e\n\u003cp\u003eThe Apache Commons Codec team is pleased to announce the release of Apache Commons Codec 1.22.1.\u003c/p\u003e\n\u003cp\u003eThe Apache Commons Codec component contains encoders and decoders for\nformats such as Base16, Base32, Base64, digest, and Hexadecimal. In addition to these\nwidely used encoders and decoders, the codec package also maintains a\ncollection of phonetic encoding utilities.\u003c/p\u003e\n\u003cp\u003eThis is a feature and maintenance release. Java 8 or later is required.\u003c/p\u003e\n\u003ch2\u003eFixed Bugs\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCODEC-344:  Base64.Builder.setEncodeTable(byte...) accepts invalid custom alphabets. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-340:  Base58.Builder.setEncodeTable(byte...) is ignored when encoding and decoding. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-342:  Base32.Builder.setEncodeTable(byte...) can create a codec that cannot decode its own output. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-343:  Base32.Builder.setHexDecodeTable(boolean) sets the encode table to a decode lookup table. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-341:  Base16.Builder.setEncodeTable(byte...) can create a codec that cannot decode its own output. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-339:  URLCodec.encodeUrl(BitSet, byte[]) allows custom safe sets to emit URL encoding control characters. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-338:  PercentCodec loses literal '+' when plusForSpace is enabled. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-337:  Digest ALL reuses System.in, so only the first algorithm sees the real input (\u003ca href=\"https://redirect.github.com/apache/commons-codec/issues/431\"\u003e#431\u003c/a\u003e). Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Fix Base64.toIntegerBytes(BigInteger) for zero edge case ([#441](https://github.com/apache/commons-codec/issues/441)). Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Add messages when throwing NullPointerException. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Add messages when throwing NullPointerException. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        StringEncoderComparator.StringEncoderComparator(StringEncoder) now fails fast on null input. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Bump org.apache.commons:commons-parent from 98 to 103. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Bump commons-io:commons-io from 2.21.0 to 2.22.0. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor complete information on Apache Commons Codec, including instructions on how to submit bug reports,\npatches, or suggestions for improvement, see the Apache Commons Codec website:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://commons.apache.org/proper/commons-codec/\"\u003ehttps://commons.apache.org/proper/commons-codec/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDownload page: \u003ca href=\"https://commons.apache.org/proper/commons-codec/download_codec.cgi\"\u003ehttps://commons.apache.org/proper/commons-codec/download_codec.cgi\u003c/a\u003e\u003c/p\u003e\n\u003chr /\u003e\n\u003c/blockquote\u003e\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-codec/commit/dc8f6c832a30f524bf12a5ae7ab013e4ad7c088f\"\u003e\u003ccode\u003edc8f6c8\u003c/code\u003e\u003c/a\u003e Prepare for the release candidate 1.22.1 RC1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/8203c1c5bb4342e2fbf258556cac4826eae7ca11\"\u003e\u003ccode\u003e8203c1c\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-codec/commit/5647fe2a66b3e74f044f414ad10d92407ede9396\"\u003e\u003ccode\u003e5647fe2\u003c/code\u003e\u003c/a\u003e StringEncoderComparator.StringEncoderComparator(StringEncoder) now fails\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/00c27a9c0636f15a0ba1d0bdc1f00fb8d9cee0fd\"\u003e\u003ccode\u003e00c27a9\u003c/code\u003e\u003c/a\u003e Reduce vertical whitespace\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/568f2d7d7cf24ff0074eec29e21868ce9fe24236\"\u003e\u003ccode\u003e568f2d7\u003c/code\u003e\u003c/a\u003e Remove unused method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/316fb15f3aa1e810a27fcc858d7c0e7ba0a4d724\"\u003e\u003ccode\u003e316fb15\u003c/code\u003e\u003c/a\u003e Remove unused method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/bf6b543c1d49bf36d9ee10de1a1472dc5d677b10\"\u003e\u003ccode\u003ebf6b543\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 7.0.0 to 7.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/e14cdfe55f4837b63daca367374ce996ad87fc5a\"\u003e\u003ccode\u003ee14cdfe\u003c/code\u003e\u003c/a\u003e Extract redundant code.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/3351e63155fa41fbfcb0744efa960adce1529798\"\u003e\u003ccode\u003e3351e63\u003c/code\u003e\u003c/a\u003e Add messages when throwing NullPointerException.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/f22dab7ea52e8bd07dfa84a6f37ce915d1536b1c\"\u003e\u003ccode\u003ef22dab7\u003c/code\u003e\u003c/a\u003e Update SCM tag\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/commons-codec/compare/rel/commons-codec-1.22.0...rel/commons-codec-1.22.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-core` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-netty-shaded` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-netty-shaded's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-netty-shaded` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-netty-shaded's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.smallrye.common:smallrye-common-annotation` from 2.19.0 to 2.20.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/defd310a881f1c168e958f8f73fc7c6518499a4e\"\u003e\u003ccode\u003edefd310\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/ffc98f68f60160620b1156b233dd650104f09862\"\u003e\u003ccode\u003effc98f6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/581\"\u003e#581\u003c/a\u003e from smallrye/release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/7cf7fcc86bddc8a9e96f14a34ac292e617d0202b\"\u003e\u003ccode\u003e7cf7fcc\u003c/code\u003e\u003c/a\u003e Release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/e6f3c592559944617e16f008f1d1ac3285fcef75\"\u003e\u003ccode\u003ee6f3c59\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/579\"\u003e#579\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/232049fc7397665ed85ed6a57ae57574a7a2b84f\"\u003e\u003ccode\u003e232049f\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.29 to 4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/b89fee46677f6d62fa10cfb67adb16fbe9fe767a\"\u003e\u003ccode\u003eb89fee4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/576\"\u003e#576\u003c/a\u003e from smallrye/dependabot/maven/org.graalvm.sdk-native...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/d2c6a36fce245cb95cf3a08f8268c530f6eceeff\"\u003e\u003ccode\u003ed2c6a36\u003c/code\u003e\u003c/a\u003e Bump org.graalvm.sdk:nativeimage from 25.0.3 to 25.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/dc378965bead25b95112ee86c264ff88b41fd7e4\"\u003e\u003ccode\u003edc37896\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/578\"\u003e#578\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/3d73326ea1c881fad45e48db7a67383359be1f35\"\u003e\u003ccode\u003e3d73326\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.28 to 4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/bdb9f0b6c1089eddb54a3959905d0316aa49db37\"\u003e\u003ccode\u003ebdb9f0b\u003c/code\u003e\u003c/a\u003e Bump io.smallrye:smallrye-parent from 50 to 51 (\u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/577\"\u003e#577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smallrye/smallrye-common/compare/2.19.0...2.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.smallrye.common:smallrye-common-cpu` from 2.19.0 to 2.20.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/defd310a881f1c168e958f8f73fc7c6518499a4e\"\u003e\u003ccode\u003edefd310\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/ffc98f68f60160620b1156b233dd650104f09862\"\u003e\u003ccode\u003effc98f6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/581\"\u003e#581\u003c/a\u003e from smallrye/release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/7cf7fcc86bddc8a9e96f14a34ac292e617d0202b\"\u003e\u003ccode\u003e7cf7fcc\u003c/code\u003e\u003c/a\u003e Release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/e6f3c592559944617e16f008f1d1ac3285fcef75\"\u003e\u003ccode\u003ee6f3c59\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/579\"\u003e#579\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/232049fc7397665ed85ed6a57ae57574a7a2b84f\"\u003e\u003ccode\u003e232049f\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.29 to 4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/b89fee46677f6d62fa10cfb67adb16fbe9fe767a\"\u003e\u003ccode\u003eb89fee4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/576\"\u003e#576\u003c/a\u003e from smallrye/dependabot/maven/org.graalvm.sdk-native...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/d2c6a36fce245cb95cf3a08f8268c530f6eceeff\"\u003e\u003ccode\u003ed2c6a36\u003c/code\u003e\u003c/a\u003e Bump org.graalvm.sdk:nativeimage from 25.0.3 to 25.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/dc378965bead25b95112ee86c264ff88b41fd7e4\"\u003e\u003ccode\u003edc37896\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/578\"\u003e#578\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/3d73326ea1c881fad45e48db7a67383359be1f35\"\u003e\u003ccode\u003e3d73326\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.28 to 4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/bdb9f0b6c1089eddb54a3959905d0316aa49db37\"\u003e\u003ccode\u003ebdb9f0b\u003c/code\u003e\u003c/a\u003e Bump io.smallrye:smallrye-parent from 50 to 51 (\u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/577\"\u003e#577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smallrye/smallrye-common/compare/2.19.0...2.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.smallrye.common:smallrye-common-cpu` from 2.19.0 to 2.20.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/defd310a881f1c168e958f8f73fc7c6518499a4e\"\u003e\u003ccode\u003edefd310\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/ffc98f68f60160620b1156b233dd650104f09862\"\u003e\u003ccode\u003effc98f6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/581\"\u003e#581\u003c/a\u003e from smallrye/release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/7cf7fcc86bddc8a9e96f14a34ac292e617d0202b\"\u003e\u003ccode\u003e7cf7fcc\u003c/code\u003e\u003c/a\u003e Release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/e6f3c592559944617e16f008f1d1ac3285fcef75\"\u003e\u003ccode\u003ee6f3c59\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/579\"\u003e#579\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/232049fc7397665ed85ed6a57ae57574a7a2b84f\"\u003e\u003ccode\u003e232049f\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.29 to 4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/b89fee46677f6d62fa10cfb67adb16fbe9fe767a\"\u003e\u003ccode\u003eb89fee4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/576\"\u003e#576\u003c/a\u003e from smallrye/dependabot/maven/org.graalvm.sdk-native...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/d2c6a36fce245cb95cf3a08f8268c530f6eceeff\"\u003e\u003ccode\u003ed2c6a36\u003c/code\u003e\u003c/a\u003e Bump org.graalvm.sdk:nativeimage from 25.0.3 to 25.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/dc378965bead25b95112ee86c264ff88b41fd7e4\"\u003e\u003ccode\u003edc37896\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/578\"\u003e#578\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/3d73326ea1c881fad45e48db7a67383359be1f35\"\u003e\u003ccode\u003e3d73326\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.28 to 4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/bdb9f0b6c1089eddb54a3959905d0316aa49db37\"\u003e\u003ccode\u003ebdb9f0b\u003c/code\u003e\u003c/a\u003e Bump io.smallrye:smallrye-parent from 50 to 51 (\u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/577\"\u003e#577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smallrye/smallrye-common/compare/2.19.0...2.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bctls-jdk18on` from 1.84 to 1.85\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:bctls-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.eclipse.sisu:org.eclipse.sisu.inject` from 1.0.1 to 1.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eclipse-sisu/sisu-project/releases\"\u003eorg.eclipse.sisu:org.eclipse.sisu.inject's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.1.0\u003c/h2\u003e\n\u003cp\u003eEclipse Sisu 1.1.0 release. Added new feature: JSR330 bean filtering.\u003c/p\u003e\n\u003cp\u003eImportant: when using Sisu Plexus Shim (that implicitly creates Sisu Inject), the JSR330 bean filtering will automatically \u0026quot;follow\u0026quot; (have same filtering rules applied) the Plexus Beans visibility. Control this behaviour using Plexus Container Configuration \u003ca href=\"https://eclipse.dev/sisu/apidocs/org/codehaus/plexus/ContainerConfiguration.html#setJSR330ComponentVisibilityFollowsPlexusVisibility(boolean)\"\u003enew method\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eUsers of Sisu Inject only (without Plexus Shim) are not affected by this change.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate Security Policy by \u003ca href=\"https://github.com/cstamas\"\u003e\u003ccode\u003e@​cstamas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/eclipse-sisu/sisu-project/pull/264\"\u003eeclipse-sisu/sisu-project#264\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild update by \u003ca href=\"https://github.com/cstamas\"\u003e\u003ccode\u003e@​cstamas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/eclipse-sisu/sisu-project/pull/267\"\u003eeclipse-sisu/sisu-project#267\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Ability to filter JSR330 beans based on some predicate by \u003ca href=\"https://github.com/cstamas\"\u003e\u003ccode\u003e@​cstamas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/eclipse-sisu...\n\n_Description has been truncated_","html_url":"https://github.com/jetty/jetty.project/pull/15624","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jetty%2Fjetty.project/issues/15624","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/15624/packages"},{"uuid":"5015650298","node_id":"PR_kwDOAUE9SM74TkvC","number":3875,"state":"closed","title":"Bump org.mariadb.jdbc:mariadb-java-client from 3.5.9 to 3.5.10","user":"dependabot[bot]","labels":["type: dependency-upgrade"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-09-04T17:31:50.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-30T03:04:53.000Z","updated_at":"2026-09-04T17:32:00.000Z","time_to_close":3162417,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.9","new_version":"3.5.10","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"}],"path":null,"ecosystem":"maven"},"body":"Bumps [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) from 3.5.9 to 3.5.10.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.10\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.10\"\u003e3.5.10\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.9...3.5.10\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1333 - Add maxAllowedPacket connection option (send/receive limit)\u003c/li\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1330 - add infer test to CI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1307 - Connection.setReadOnly(true) still allows DML statements to execute\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1327 - Align SSL hostname verification with TLS libraries (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1331 - trustStore-configured TLS connections defer certificate-chain/identity validation instead of validating\nup front (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1340 - SQL injection via unescaped identifiers in updatable ResultSet generated statements (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1341 - MariaDbPoolDataSource.getConnection(user, password) ignores the user argument when the pool's own\npassword is supplied (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1328 - restrictedAuth allowlist is matched with substring contains() instead of equality (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1338 - Validate length-encoded integers fit a non-negative int before use as a length (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1336 - CONJ-1282 regression: TLS connection fails when JDBC hostname is an absolute FQDN ending with a trailing\ndot (report by Shaswata, thanks to Pepo48 for PR)\u003c/li\u003e\n\u003cli\u003eCONJ-1335 - getGeneratedKeys() throws \u0026quot;integer overflow\u0026quot; after a batch insert when the auto-increment value exceeds\nInteger.MAX_VALUE, and returns bulk generated keys out of batch order\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.10\"\u003e3.5.10\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.9...3.5.10\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1333 - Add maxAllowedPacket connection option (send/receive limit)\u003c/li\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1330 - add infer test to CI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1307 - Connection.setReadOnly(true) still allows DML statements to execute\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1327 - Align SSL hostname verification with TLS libraries (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1331 - trustStore-configured TLS connections defer certificate-chain/identity validation instead of validating\nup front (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1340 - SQL injection via unescaped identifiers in updatable ResultSet generated statements (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1341 - MariaDbPoolDataSource.getConnection(user, password) ignores the user argument when the pool's own\npassword is supplied (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1328 - restrictedAuth allowlist is matched with substring contains() instead of equality (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1338 - Validate length-encoded integers fit a non-negative int before use as a length (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1336 - CONJ-1282 regression: TLS connection fails when JDBC hostname is an absolute FQDN ending with a trailing\ndot (report by Shaswata, thanks to Pepo48 for PR)\u003c/li\u003e\n\u003cli\u003eCONJ-1335 - getGeneratedKeys() throws \u0026quot;integer overflow\u0026quot; after a batch insert when the auto-increment value exceeds\nInteger.MAX_VALUE, and returns bulk generated keys out of batch order\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.4.4\"\u003e3.4.4\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.4.3...3.4.4\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eNotable Changes\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/6164678e83aa9d203939d5bec73bd4571cbec8a2\"\u003e\u003ccode\u003e6164678\u003c/code\u003e\u003c/a\u003e [misc] update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/6f58858707c3d59881b171c40ec5ddd2773b0642\"\u003e\u003ccode\u003e6f58858\u003c/code\u003e\u003c/a\u003e [CONJ-1335] getGeneratedKeys() throws SQLDataException \u0026quot;integer overflow\u0026quot; aft...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/9f06db76c8502fa952dcd4de6ebe46cfe3f6ead9\"\u003e\u003ccode\u003e9f06db7\u003c/code\u003e\u003c/a\u003e [misc] CI stability improvement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/99aa9e2e7b84ecf4edec20beeac37752066599c8\"\u003e\u003ccode\u003e99aa9e2\u003c/code\u003e\u003c/a\u003e [CONJ-1336] correction follow up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/28a1550357fd3773a1cda68d545e79573c26bc8a\"\u003e\u003ccode\u003e28a1550\u003c/code\u003e\u003c/a\u003e [CONJ-1336] strip trailing dot from hostname before SNI and hostname verifica...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/b2b3f1beb8a5cb83f48e68ed7b912c637da0634e\"\u003e\u003ccode\u003eb2b3f1b\u003c/code\u003e\u003c/a\u003e [misc] limit authentication switch requests to 10 per connection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26ca60ab4a6d58905d8beef98428bf04d6cd4a5f\"\u003e\u003ccode\u003e26ca60a\u003c/code\u003e\u003c/a\u003e [misc] bound the whole connection phase by connectTimeout\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/15e08ff54fd0247a5491fe2695562d36b8e7f7c2\"\u003e\u003ccode\u003e15e08ff\u003c/code\u003e\u003c/a\u003e [CONJ-1337] Limit parsec authentication PBKDF2 iteration factor to the connec...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d3c4a726d7cfcc0fa10ee4cdcca423a7d88c67ab\"\u003e\u003ccode\u003ed3c4a72\u003c/code\u003e\u003c/a\u003e bump 3.5.10 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d85e05f4dc010ce40df548cf908da6bbc2640903\"\u003e\u003ccode\u003ed85e05f\u003c/code\u003e\u003c/a\u003e [CONJ-1342] socketFactory option allows loading arbitrary bytecode via jar: U...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.9...3.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.mariadb.jdbc:mariadb-java-client\u0026package-manager=gradle\u0026previous-version=3.5.9\u0026new-version=3.5.10)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/spring-projects/spring-session/pull/3875","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/spring-projects%2Fspring-session/issues/3875","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3875/packages"},{"uuid":"4654402332","node_id":"PR_kwDOQtbfPc7mBGUp","number":213,"state":"open","title":"Bump org.mariadb.jdbc:mariadb-java-client from 3.5.8 to 3.5.9","user":"dependabot[bot]","labels":[],"assignees":["schemacrawler","sualeh"],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-13T04:53:00.000Z","updated_at":"2026-06-13T04:53:47.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.8","new_version":"3.5.9","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"}],"path":null,"ecosystem":"maven"},"body":"Bumps [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) from 3.5.8 to 3.5.9.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.9\"\u003e3.5.9\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.8...3.5.9\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1223 - cache TLS trust/key managers across connections to reduce SSL connection cost\u003c/li\u003e\n\u003cli\u003eCONJ-1314 - add SPI for interactive dialog (PAM) authentication callback\u003c/li\u003e\n\u003cli\u003eCONJ-1311 - add dedicated option \u003ccode\u003euseIpForKillQuery\u003c/code\u003e for query cancellation\u003c/li\u003e\n\u003cli\u003eCONJ-1310 - Add full native image support and CI coverage\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1320 - PAM (dialog) authentication must require a secure connection (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1319 - Use constant-time comparison when validating the server certificate fingerprint (report by jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - enforce \u003ccode\u003eallowLocalInfile=false\u003c/code\u003e on the server's local-infile request, so a malicious server cannot read a client file despite the option being disabled\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 - LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if MitM (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1304 - CallableStatement parameter metadata read from mysql.proc, with MySQL info_schema fallback\u003c/li\u003e\n\u003cli\u003eCONJ-1299 - keep VALUES literals after the last placeholder when rewriting batches\u003c/li\u003e\n\u003cli\u003eCONJ-1313 - race condition in HaMode#getAvailableHostInOrder can cause NPE\u003c/li\u003e\n\u003cli\u003eCONJ-1311 - Connection.cancelCurrentQuery fails with SslMode.VERIFY_FULL when client socket IP is set\u003c/li\u003e\n\u003cli\u003eCONJ-1264 - handle LocalDateTime as a zoneless wall-clock value\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1324 - fix SQL parser to correctly handle '--' in expressions and reset lastChar after block comments\u003c/li\u003e\n\u003cli\u003eCONJ-1323 - LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.4.3\"\u003e3.4.3\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.4.2...3.4.3\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1259 - DatabaseMetaData read-only detection: handle MariaDB 12.0 \u003ccode\u003e@@read_only\u003c/code\u003e returning \u003ccode\u003eON\u003c/code\u003e/\u003ccode\u003eOFF\u003c/code\u003e\ninstead of \u003ccode\u003e1\u003c/code\u003e/\u003ccode\u003e0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1320 - PAM (dialog) authentication now requires a secure connection (TLS or unix socket), like mysql_clear_password (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1319 - use constant-time comparison when validating the server certificate fingerprint (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 - LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.5\"\u003e3.3.5\u003c/a\u003e (Jun 2026)\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\u003eSee full diff in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.mariadb.jdbc:mariadb-java-client\u0026package-manager=maven\u0026previous-version=3.5.8\u0026new-version=3.5.9)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/schemacrawler/SchemaCrawler-Core/pull/213","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/schemacrawler%2FSchemaCrawler-Core/issues/213","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/213/packages"},{"uuid":"4499519588","node_id":"PR_kwDORvJjTc7eL9ZE","number":30,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 18 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-22T03:13:03.000Z","updated_at":"2026-05-22T03:17:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":18,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.0.3","new_version":"12.6.2"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"org.apache.pdfbox:jbig2-imageio","old_version":"3.0.4","new_version":"3.0.5"},{"name":"com.github.RouHim:jaudiotagger","old_version":"2.0.16","new_version":"2.0.21"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.6.0","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.6","new_version":"4.0.8"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.3","new_version":"3.2.4","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.6.Final","new_version":"7.3.5.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 16 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.0.3` | `12.6.2` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| org.apache.pdfbox:jbig2-imageio | `3.0.4` | `3.0.5` |\n| com.github.RouHim:jaudiotagger | `2.0.16` | `2.0.21` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.6.0` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.6` | `4.0.8` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.3` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.3` | `3.2.4` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.2.6.Final` | `7.3.5.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.5.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.0.3 to 12.6.2\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:jbig2-imageio` from 3.0.4 to 3.0.5\n\nUpdates `com.github.RouHim:jaudiotagger` from 2.0.16 to 2.0.21\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.6.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Gauthier Roebroeck, Robin Schimpf\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.10...v7.6.0\"\u003e7.6.0\u003c/a\u003e (2026-05-13)\u003c/h1\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\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/junrar/junrar/commit/cb4b7fdb84269e95741fa22120e08ceb15a06152\"\u003e\u003ccode\u003ecb4b7fd\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper to 9.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/0bb56b3df4e3b6d14f73de92746a2eb47dd2d7a3\"\u003e\u003ccode\u003e0bb56b3\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/ca621b22421f9e846df23112b32113230610c8d9\"\u003e\u003ccode\u003eca621b2\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/e0874d213832bbeaa8eb265c79479b01b5fa7392\"\u003e\u003ccode\u003ee0874d2\u003c/code\u003e\u003c/a\u003e feat: support random access for files in solid RAR4 archives\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/90f0548c728b0bf2e94f6e26f9e6396d9d0a7262\"\u003e\u003ccode\u003e90f0548\u003c/code\u003e\u003c/a\u003e build(deps): bump org.jreleaser from 1.23.0 to 1.24.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/83a5d085dc84991226229fef1515cc902d129241\"\u003e\u003ccode\u003e83a5d08\u003c/code\u003e\u003c/a\u003e build(deps): bump commons-io:commons-io from 2.21.0 to 2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/338efcb5472be051989fbafd7179d561c71722eb\"\u003e\u003ccode\u003e338efcb\u003c/code\u003e\u003c/a\u003e ci: replace deprecated action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/5270d235ade54d96dfc9958ab06f495fbbd169e7\"\u003e\u003ccode\u003e5270d23\u003c/code\u003e\u003c/a\u003e perf: replace RarCRC.checkCrc with java.util.zip.CRC32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d5abcdb9af988ddfa76e98d80787e15525488332\"\u003e\u003ccode\u003ed5abcdb\u003c/code\u003e\u003c/a\u003e build(deps): bump com.github.ben-manes.versions from 0.53.0 to 0.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/edadb28896962fdcf754029bafd0994aaff24530\"\u003e\u003ccode\u003eedadb28\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.10 [skip ci]\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.6 to 4.0.8\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/c2ea79e9178f0aaa5e4f381c644140357bfc307e\"\u003e\u003ccode\u003ec2ea79e\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3906b27dcdde8fc6a4fef193147109b70bf2f0dc\"\u003e\u003ccode\u003e3906b27\u003c/code\u003e\u003c/a\u003e Prep for 3.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/b17b616c7dc264cfef26f9dd28eaf54bc40b5c4c\"\u003e\u003ccode\u003eb17b616\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/36cf9995cff15aa3e69786da1d6c52f208fddf8a\"\u003e\u003ccode\u003e36cf999\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-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.ben-manes.caffeine:caffeine` from 3.2.3 to 3.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ben-manes/caffeine/releases\"\u003ecom.github.ben-manes.caffeine:caffeine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved access expiration's read performance by avoiding false sharing effects caused by the timestamp update\u003c/li\u003e\n\u003cli\u003eFixed head-of-line blocking of expiration queues caused by in-flight async entries (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed various minor issues found using AI audits\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://docs.oracle.com/en/java/javase/25/docs/api//java.base/java/io/ObjectInputFilter.html\"\u003eObjectInputFilter\u003c/a\u003e support to JCache\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/836b65c0a83e5d1641ded9c6de578654bc04b2e9\"\u003e\u003ccode\u003e836b65c\u003c/code\u003e\u003c/a\u003e use a consistent expiration tolerance calculation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0dc7daf962730048fe46ae4626827afbb97ddf92\"\u003e\u003ccode\u003e0dc7daf\u003c/code\u003e\u003c/a\u003e resurrect in-flight async entries on expiration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0bac8b54fd634ffe95d35ccd1d94daba95e7b369\"\u003e\u003ccode\u003e0bac8b5\u003c/code\u003e\u003c/a\u003e handle head-of-line blocking of expiration queues (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/ff258366de0a89129152ead72524ce88f8fca67b\"\u003e\u003ccode\u003eff25836\u003c/code\u003e\u003c/a\u003e test polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f3a6176e2e3a7fe085214472858c6029c108fc3f\"\u003e\u003ccode\u003ef3a6176\u003c/code\u003e\u003c/a\u003e Fix JCache close/createCache races and recursive teardown\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/622fbe7dbf7606f114b956205706935be2fcf3c8\"\u003e\u003ccode\u003e622fbe7\u003c/code\u003e\u003c/a\u003e Fix removal in identity views and widen hill-climber counters\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/8da5a7a05d8b725c9dbd577be8ffaf2372aa7e23\"\u003e\u003ccode\u003e8da5a7a\u003c/code\u003e\u003c/a\u003e defer weighing the entry until after the putIfAbsent hit fast-path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/94ad0ff8556c9923a8d9746ab85af9ee830dd051\"\u003e\u003ccode\u003e94ad0ff\u003c/code\u003e\u003c/a\u003e Record eviction stats before notifying the removal listener consistently\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f94c0113d0c98dc0afaadf1f6748ea280aa4dff7\"\u003e\u003ccode\u003ef94c011\u003c/code\u003e\u003c/a\u003e Auto-assert eviction stats alongside notifications.withCause.exclusively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/2e945e090fbff4f96251dfe1bacba3780a5bdb0c\"\u003e\u003ccode\u003e2e945e0\u003c/code\u003e\u003c/a\u003e Skip timestamp writes within tolerance on the read path.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ben-manes/caffeine/compare/v3.2.3...v3.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.2.6.Final to 7.3.5.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 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.0...v9.5.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cdome/ollumi/pull/30","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdome%2Follumi/issues/30","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/30/packages"},{"uuid":"4499519012","node_id":"PR_kwDORqdfXc7eL9SP","number":15,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 23 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-22T03:12:52.000Z","updated_at":"2026-05-22T03:16:05.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":23,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"11.19.0","new_version":"12.6.2"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"org.apache.pdfbox:jbig2-imageio","old_version":"3.0.4","new_version":"3.0.5"},{"name":"com.twelvemonkeys.imageio:imageio-jpeg","old_version":"3.13.0","new_version":"3.13.1"},{"name":"io.documentnode:epub4j-core","old_version":"4.2.2","new_version":"4.2.3","repository_url":"https://github.com/documentnode/epub4j"},{"name":"com.github.junrar:junrar","old_version":"7.5.7","new_version":"7.6.0","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.21.2","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"2.8.14","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.tukaani:xz","old_version":"1.11","new_version":"1.12","repository_url":"https://github.com/tukaani-project/xz-java"},{"name":"tools.jackson:jackson-bom","old_version":"3.0.4","new_version":"3.1.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.0","new_version":"3.2.4","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.assertj:assertj-core","old_version":"3.27.6","new_version":"3.27.7","repository_url":"https://github.com/assertj/assertj"},{"name":"org.springframework.boot","old_version":"4.0.2","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.0.Final","new_version":"7.3.5.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.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 gradle-dependencies group with 18 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `11.19.0` | `12.6.2` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| org.apache.pdfbox:jbig2-imageio | `3.0.4` | `3.0.5` |\n| com.twelvemonkeys.imageio:imageio-jpeg | `3.13.0` | `3.13.1` |\n| [io.documentnode:epub4j-core](https://github.com/documentnode/epub4j) | `4.2.2` | `4.2.3` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.7` | `7.6.0` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.21.2` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `2.8.14` | `3.0.3` |\n| [org.tukaani:xz](https://github.com/tukaani-project/xz-java) | `1.11` | `1.12` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.0.4` | `3.1.3` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.0` | `3.2.4` |\n| [org.assertj:assertj-core](https://github.com/assertj/assertj) | `3.27.6` | `3.27.7` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.2` | `4.0.6` |\n| org.hibernate.orm | `7.2.0.Final` | `7.3.5.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.5.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 11.19.0 to 12.6.2\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:jbig2-imageio` from 3.0.4 to 3.0.5\n\nUpdates `com.twelvemonkeys.imageio:imageio-jpeg` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-tiff` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-webp` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-bmp` from 3.13.0 to 3.13.1\n\nUpdates `io.documentnode:epub4j-core` from 4.2.2 to 4.2.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/documentnode/epub4j/commit/4bf55082feba0496f98b867ec03ebec5f393b649\"\u003e\u003ccode\u003e4bf5508\u003c/code\u003e\u003c/a\u003e Migrate Maven Central publishing to new Central Portal API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/documentnode/epub4j/commit/b153885ef8aefbe4063a40894c048a5cc2b5a354\"\u003e\u003ccode\u003eb153885\u003c/code\u003e\u003c/a\u003e Load sdkman environment before running gradle commands\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/documentnode/epub4j/compare/v4.2.2...v4.2.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.junrar:junrar` from 7.5.7 to 7.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.6.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Gauthier Roebroeck, Robin Schimpf\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.10...v7.6.0\"\u003e7.6.0\u003c/a\u003e (2026-05-13)\u003c/h1\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\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/junrar/junrar/commit/cb4b7fdb84269e95741fa22120e08ceb15a06152\"\u003e\u003ccode\u003ecb4b7fd\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper to 9.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/0bb56b3df4e3b6d14f73de92746a2eb47dd2d7a3\"\u003e\u003ccode\u003e0bb56b3\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/ca621b22421f9e846df23112b32113230610c8d9\"\u003e\u003ccode\u003eca621b2\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/e0874d213832bbeaa8eb265c79479b01b5fa7392\"\u003e\u003ccode\u003ee0874d2\u003c/code\u003e\u003c/a\u003e feat: support random access for files in solid RAR4 archives\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/90f0548c728b0bf2e94f6e26f9e6396d9d0a7262\"\u003e\u003ccode\u003e90f0548\u003c/code\u003e\u003c/a\u003e build(deps): bump org.jreleaser from 1.23.0 to 1.24.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/83a5d085dc84991226229fef1515cc902d129241\"\u003e\u003ccode\u003e83a5d08\u003c/code\u003e\u003c/a\u003e build(deps): bump commons-io:commons-io from 2.21.0 to 2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/338efcb5472be051989fbafd7179d561c71722eb\"\u003e\u003ccode\u003e338efcb\u003c/code\u003e\u003c/a\u003e ci: replace deprecated action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/5270d235ade54d96dfc9958ab06f495fbbd169e7\"\u003e\u003ccode\u003e5270d23\u003c/code\u003e\u003c/a\u003e perf: replace RarCRC.checkCrc with java.util.zip.CRC32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d5abcdb9af988ddfa76e98d80787e15525488332\"\u003e\u003ccode\u003ed5abcdb\u003c/code\u003e\u003c/a\u003e build(deps): bump com.github.ben-manes.versions from 0.53.0 to 0.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/edadb28896962fdcf754029bafd0994aaff24530\"\u003e\u003ccode\u003eedadb28\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.10 [skip ci]\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.7...v7.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.21.2 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\u003c/p\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.1\u003c/strong\u003e is out now, adding support for the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors, a configurable maximum parser depth, and numerous bug fixes and improvements.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://jsoup.org/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for using the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors (e.g. \u003ccode\u003e[attr~=regex]\u003c/code\u003e, \u003ccode\u003e:matches(regex)\u003c/code\u003e), which ensures linear-time performance for regex evaluation. This allows safer handling of arbitrary user-supplied query regexes. To enable, add the \u003ccode\u003ecom.google.re2j\u003c/code\u003e dependency to your classpath, e.g.:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e  \u0026lt;dependency\u0026gt;\r\n    \u0026lt;groupId\u0026gt;com.google.re2j\u0026lt;/groupId\u0026gt;\r\n    \u0026lt;artifactId\u0026gt;re2j\u0026lt;/artifactId\u0026gt;\r\n    \u0026lt;version\u0026gt;1.8\u0026lt;/version\u0026gt;\r\n  \u0026lt;/dependency\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e(If you already have that dependency in your classpath, but you want to keep using the Java regex engine, you can disable re2j via \u003ccode\u003eSystem.setProperty(\u0026quot;jsoup.useRe2j\u0026quot;, \u0026quot;false\u0026quot;)\u003c/code\u003e.) You can confirm that the re2j engine has been enabled correctly by calling \u003ccode\u003eRegex.usingRe2j()\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2407\"\u003e#2407\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.22.1 (2026-Jan-01)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for using the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors (e.g. \u003ccode\u003e[attr~=regex]\u003c/code\u003e, \u003ccode\u003e:matches(regex)\u003c/code\u003e), which ensures linear-time performance for regex evaluation. This allows safer handling of arbitrary user-supplied query regexes. To enable, add the \u003ccode\u003ecom.google.re2j\u003c/code\u003e dependency to your classpath, e.g.:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e  \u0026lt;dependency\u0026gt;\n    \u0026lt;groupId\u0026gt;com.google.re2j\u0026lt;/groupId\u0026gt;\n    \u0026lt;artifactId\u0026gt;re2j\u0026lt;/artifactId\u0026gt;\n    \u0026lt;version\u0026gt;1.8\u0026lt;/version\u0026gt;\n  \u0026lt;/dependency\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e(If you already have that dependency in your classpath, but you want to keep using the Java regex engine, you can disable re2j via \u003ccode\u003eSystem.setProperty(\u0026quot;jsoup.useRe2j\u0026quot;, \u0026quot;false\u0026quot;)\u003c/code\u003e.) You can confirm that the re2j engine has been enabled correctly by calling \u003ccode\u003eorg.jsoup.helper.Regex.usingRe2j()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2407\"\u003e#2407\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded an instance method \u003ccode\u003eParser#unescape(String, boolean)\u003c/code\u003e that unescapes HTML entities using the parser's configuration (e.g. to support error tracking), complementing the existing static utility \u003ccode\u003eParser.unescapeEntities(String, boolean)\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2396\"\u003e#2396\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded a configurable maximum parser depth (to limit the number of open elements on stack) to both HTML and XML parsers. The HTML parser now defaults to a depth of 512 to match browser behavior, and protect against unbounded stack growth, while the XML parser keeps unlimited depth by default, but can opt into a limit via \u003ccode\u003eorg.jsoup.parser.Parser#setMaxDepth\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2421\"\u003e#2421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild: added CI coverage for JDK 25 \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2403\"\u003e#2403\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild: added a CI fuzzer for contextual fragment parsing (in addition to existing full body HTML and XML fuzzers). [oss-fuzz \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/14041\"\u003e#14041\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/google/oss-fuzz/pull/14041\"\u003egoogle/oss-fuzz#14041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSet a removal schedule of jsoup 1.24.1 for previously deprecated APIs.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePreviously cached child \u003ccode\u003eElements\u003c/code\u003e of an \u003ccode\u003eElement\u003c/code\u003e were not correctly invalidated in \u003ccode\u003eNode#replaceWith(Node)\u003c/code\u003e, which could lead to incorrect results when subsequently calling \u003ccode\u003eElement#children()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2391\"\u003e#2391\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAttribute selector values are now compared literally without trimming. Previously, jsoup trimmed whitespace from selector values and from element attribute values, which could cause mismatches with browser behavior (e.g. \u003ccode\u003e[attr=\u0026quot; foo \u0026quot;]\u003c/code\u003e). Now matches align with the CSS specification and browser engines. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2380\"\u003e#2380\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen using the JDK HttpClient, any system default proxy (\u003ccode\u003eProxySelector.getDefault()\u003c/code\u003e) was ignored. Now, the system proxy is used if a per-request proxy is not set. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2388\"\u003e#2388\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2390\"\u003e#2390\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eA \u003ccode\u003eValidationException\u003c/code\u003e could be thrown in the adoption agency algorithm with particularly broken input. Now logged as a parse error. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2393\"\u003e#2393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNull characters in the HTML body were not consistently removed; and in foreign content were not correctly replaced. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2395\"\u003e#2395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAn \u003ccode\u003eIndexOutOfBoundsException\u003c/code\u003e could be thrown when parsing a body fragment with crafted input. Now logged as a parse error. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2397\"\u003e#2397\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2406\"\u003e#2406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen using StructuralEvaluators (e.g., a \u003ccode\u003eparent child\u003c/code\u003e selector) across many retained threads, their memoized results could also be retained, increasing memory use. These results are now cleared immediately after use, reducing overall memory consumption. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2411\"\u003e#2411\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCloning a \u003ccode\u003eParser\u003c/code\u003e now preserves any custom \u003ccode\u003eTagSet\u003c/code\u003e applied to the parser. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2422\"\u003e#2422\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2423\"\u003e#2423\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.21.2...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 2.8.14 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003espringdoc-openapi v3.0.2 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3229\"\u003e#3229\u003c/a\u003e – Add support for Spring Framework API Versioning with Functional Endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3208\"\u003e#3208\u003c/a\u003e – Add \u003ccode\u003espringdoc.swagger-ui.document-title\u003c/code\u003e property\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.3\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.43\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Scalar to version \u003cstrong\u003e0.5.55\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3232\"\u003e#3232\u003c/a\u003e – Gracefully handle springdoc endpoint paths during API version resolution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3230\"\u003e#3230\u003c/a\u003e – Scalar source URLs resolve to \u003ccode\u003enull/\u0026lt;groupName\u0026gt;\u003c/code\u003e on second request when using \u003ccode\u003eGroupedOpenApi\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3228\"\u003e#3228\u003c/a\u003e – springdoc-openapi-starter 3.x doesn't depend on \u003ccode\u003eorg.springframework.boot:spring-boot-starter\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.0.2] - 2026-02-27\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3229\"\u003e#3229\u003c/a\u003e – Add support for Spring Framework API Versioning with Functional Endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3208\"\u003e#3208\u003c/a\u003e – Add \u003ccode\u003espringdoc.swagger-ui.document-title\u003c/code\u003e property\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.3\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.43\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Scalar to version \u003cstrong\u003e0.5.55\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3232\"\u003e#3232\u003c/a\u003e – Gracefully handle springdoc endpoint paths during API version resolution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3230\"\u003e#3230\u003c/a\u003e – Scalar source URLs resolve to \u003ccode\u003enull/\u0026lt;groupName\u0026gt;\u003c/code\u003e on second request when using \u003ccode\u003eGroupedOpenApi\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3228\"\u003e#3228\u003c/a\u003e – springdoc-openapi-starter 3.x doesn't depend on \u003ccode\u003eorg.springframework.boot:spring-boot-starter\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3220\"\u003e#3220\u003c/a\u003e – Reachability metadata not compatible with GraalVM 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3195\"\u003e#3195\u003c/a\u003e – Application won't compile when OpenApi and spring-boot-data-rest is present\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3193\"\u003e#3193\u003c/a\u003e – \u003ccode\u003eOpenApi\u003c/code\u003e field in \u003ccode\u003eSpringDocConfigProperties\u003c/code\u003e does not comply with camel case naming conventions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v2.8.14...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.tukaani:xz` from 1.11 to 1.12\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tukaani-project/xz-java/blob/master/NEWS.md\"\u003eorg.tukaani:xz's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.12 (2026-03-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix ArrayIndexOutOfBoundsException in the LZMA/LZMA2 encoder on\nx86-64 and ARM64 when running on Java 9 or newer. The affected\ncode isn't used on Java 8. The bug is present in versions 1.10\nand 1.11. If one cannot upgrade, one should set the property\n\u003ccode\u003eorg.tukaani.xz.MatchLengthFinder=Basic\u003c/code\u003e to disable the affected\ncode path.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix ArrayCache usage in LZMAInputStream. If ArrayCache was enabled,\ndecompression was likely to fail quickly when the cache returns a\ncached array. ArrayCache is disabled by default.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe binaries of 1.12 in the Maven Central require Java 8 and\ncontain optimized classes for Java \u0026gt;= 9 as multi-release JAR.\nThey were built with OpenJDK 21.0.10 on GNU/Linux and can be\nreproduced using the following command:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSOURCE_DATE_EPOCH=1772370000 TZ=UTC0 ant maven\n\u003c/code\u003e\u003c/pre\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/tukaani-project/xz-java/commit/107a519fac1e6789101ad9c234afe3dc407be7f5\"\u003e\u003ccode\u003e107a519\u003c/code\u003e\u003c/a\u003e Bump the version number to 1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/3061152e66a8ea2cc6366fd5da21409b8a3d4788\"\u003e\u003ccode\u003e3061152\u003c/code\u003e\u003c/a\u003e Update NEWS.md for 1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/0ecee25c1590dae305135317cf6e768f49093af7\"\u003e\u003ccode\u003e0ecee25\u003c/code\u003e\u003c/a\u003e Refactor EXTRA_SIZE to getExtraSize()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/ac1aeb197dd8589dc6892f13f5ef68801383ec34\"\u003e\u003ccode\u003eac1aeb1\u003c/code\u003e\u003c/a\u003e Fix ArrayIndexOutOfBoundsException in the LZMA/LZMA2 encoder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/12c75fd1d06ef7db89335d3da1ca5bb91ab6ac0b\"\u003e\u003ccode\u003e12c75fd\u003c/code\u003e\u003c/a\u003e Fix ArrayCache usage with LZMAInputStream\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/e52d9ad621afcaa422668484bad91ce7ba0506ef\"\u003e\u003ccode\u003ee52d9ad\u003c/code\u003e\u003c/a\u003e SHA256SUMS: Add 1.11 files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/9a755ec5335de00ce365b365b72e4683e591171f\"\u003e\u003ccode\u003e9a755ec\u003c/code\u003e\u003c/a\u003e CI: Add missing SPDX tags\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tukaani-project/xz-java/compare/v1.11...v1.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tools.jackson:jackson-bom` from 3.0.4 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/c2ea79e9178f0aaa5e4f381c644140357bfc307e\"\u003e\u003ccode\u003ec2ea79e\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3906b27dcdde8fc6a4fef193147109b70bf2f0dc\"\u003e\u003ccode\u003e3906b27\u003c/code\u003e\u003c/a\u003e Prep for 3.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/b17b616c7dc264cfef26f9dd28eaf54bc40b5c4c\"\u003e\u003ccode\u003eb17b616\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/36cf9995cff15aa3e69786da1d6c52f208fddf8a\"\u003e\u003ccode\u003e36cf999\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-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.0.4...jackson-bom-3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.ben-manes.caffeine:caffeine` from 3.2.0 to 3.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ben-manes/caffeine/releases\"\u003ecom.github.ben-manes.caffeine:caffeine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved access expiration's read performance by avoiding false sharing effects caused by the timestamp update\u003c/li\u003e\n\u003cli\u003eFixed head-of-line blocking of expiration queues caused by in-flight async entries (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed various minor issues found using AI audits\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://docs.oracle.com/en/java/javase/25/docs/api//java.base/java/io/ObjectInputFilter.html\"\u003eObjectInputFilter\u003c/a\u003e support to JCache\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.2.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed frequency tracking of weak keys to use the object's identity hash code (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1902\"\u003e#1902\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for underscores in \u003ccode\u003eCaffeineSpec\u003c/code\u003e when using numeric literals (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1890\"\u003e#1890\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the external api to no longer lock when querying for the maximum size or weighted size (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1897\"\u003e#1897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded detection and recovery when a custom \u003ccode\u003eCompletableFuture\u003c/code\u003e is in an inconsistent state (\u003ca href=\"https://redirect.github.com/quarkusio/quarkus/issues/50513\"\u003equarkus#50513\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.2.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed characteristics returned by Spliterators (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1883\"\u003e#1883\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.2.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e for an async cache's synchronous view to retry if incomplete\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eCaffeineSpec\u003c/code\u003e when being reflectively constructed (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1839\"\u003e#1839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the handling of negative durations with variable expiration\u003c/li\u003e\n\u003cli\u003eFixed intermittent null after replacing a weak/soft value (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1820\"\u003e#1820\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/ben-manes/caffeine/commit/836b65c0a83e5d1641ded9c6de578654bc04b2e9\"\u003e\u003ccode\u003e836b65c\u003c/code\u003e\u003c/a\u003e use a consistent expiration tolerance calculation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0dc7daf962730048fe46ae4626827afbb97ddf92\"\u003e\u003ccode\u003e0dc7daf\u003c/code\u003e\u003c/a\u003e resurrect in-flight async entries on expiration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0bac8b54fd634ffe95d35ccd1d94daba95e7b369\"\u003e\u003ccode\u003e0bac8b5\u003c/code\u003e\u003c/a\u003e handle head-of-line blocking of expiration queues (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/ff258366de0a89129152ead72524ce88f8fca67b\"\u003e\u003ccode\u003eff25836\u003c/code\u003e\u003c/a\u003e test polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f3a6176e2e3a7fe085214472858c6029c108fc3f\"\u003e\u003ccode\u003ef3a6176\u003c/code\u003e\u003c/a\u003e Fix JCache close/createCache races and recursive teardown\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/622fbe7dbf7606f114b956205706935be2fcf3c8\"\u003e\u003ccode\u003e622fbe7\u003c/code\u003e\u003c/a\u003e Fix removal in identity views and widen hill-climber counters\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/8da5a7a05d8b725c9dbd577be8ffaf2372aa7e23\"\u003e\u003ccode\u003e8da5a7a\u003c/code\u003e\u003c/a\u003e defer weighing the entry until after the putIfAbsent hit fast-path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/94ad0ff8556c9923a8d9746ab85af9ee830dd051\"\u003e\u003ccode\u003e94ad0ff\u003c/code\u003e\u003c/a\u003e Record eviction stats before notifying the removal listener consistently\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f94c0113d0c98dc0afaadf1f6748ea280aa4dff7\"\u003e\u003ccode\u003ef94c011\u003c/code\u003e\u003c/a\u003e Auto-assert eviction stats alongside notifications.withCause.exclusively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/2e945e090fbff4f96251dfe1bacba3780a5bdb0c\"\u003e\u003ccode\u003e2e945e0\u003c/code\u003e\u003c/a\u003e Skip timestamp writes within tolerance on the read path.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ben-manes/caffeine/compare/v3.2.0...v3.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.assertj:assertj-core` from 3.27.6 to 3.27.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assertj/assertj/releases\"\u003eorg.assertj:assertj-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.27.7\u003c/h2\u003e\n\u003ch2\u003e:lock: Security\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix XXE vulnerability in \u003ccode\u003eisXmlEqualTo\u003c/code\u003e assertion (CVE-2026-24400)\n\u003cul\u003e\n\u003cli\u003eSee GHSA-rqfh-9r24-8c9r for details; many thanks to \u003ca href=\"https://github.com/wxt201\"\u003e\u003ccode\u003e@​wxt201\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/Song-Li\"\u003e\u003ccode\u003e@​Song-Li\u003c/code\u003e\u003c/a\u003e for responsibly reporting it!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:no_entry_sign: Deprecated\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003eXmlStringPrettyFormatter\u003c/code\u003e with no replacement\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:bug: Bug Fixes\u003c/h2\u003e\n\u003ch3\u003eGuava\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNavigation to \u003ccode\u003eassertj-core\u003c/code\u003e or \u003ccode\u003eguava\u003c/code\u003e types from \u003ccode\u003eassertj-guava\u003c/code\u003e Javadoc site has unnecessary header \u003ca href=\"https://redirect.github.com/assertj/assertj/issues/3478\"\u003e#3478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Byte Buddy 1.18.3\u003c/li\u003e\n\u003cli\u003eUpgrade to JUnit BOM 5.14.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGuava\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Guava 33.5.0-jre\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/e84071667f5f8f13084af9dfa54cee5fd9db18db\"\u003e\u003ccode\u003ee840716\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release assertj-build-3.27.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/85ca7eb6609bb179c043b85ae7d290523b1ba79a\"\u003e\u003ccode\u003e85ca7eb\u003c/code\u003e\u003c/a\u003e Deprecate \u003ccode\u003eXmlStringPrettyFormatter\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/77081dc5eb107141df80f95bd0149b468e451341\"\u003e\u003ccode\u003e77081dc\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/b68fc24a9de28f28a486fc5b887c1b8a003a5823\"\u003e\u003ccode\u003eb68fc24\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4.31.9 to 4.31.10 in the github-actions group ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/0cf5bb6c50f6ead3deaa2a2ff50ef1e7d933c8a3\"\u003e\u003ccode\u003e0cf5bb6\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ekotlin.version\u003c/code\u003e from 2.1.0 to 2.2.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/d393ef1f5e48c89d47d7cf6d1eae359ceda0a126\"\u003e\u003ccode\u003ed393ef1\u003c/code\u003e\u003c/a\u003e Abort tests when symbolic links cannot be created (\u003ca href=\"https://redirect.github.com/assertj/assertj/issues/3788\"\u003e#3788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/22124331e9922af5a43ab50f7a9a25b65be53be1\"\u003e\u003ccode\u003e2212433\u003c/code\u003e\u003c/a\u003e Add IntelliJ custom inspection for test class names\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/5717d025cfe0f4c66de20f3253c0b0ecba259aa1\"\u003e\u003ccode\u003e5717d02\u003c/code\u003e\u003c/a\u003e Update JetBrains icon\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/a8ec20bd42ed01f9cc6f654046c7dd424b0af07c\"\u003e\u003ccode\u003ea8ec20b\u003c/code\u003e\u003c/a\u003e Add icon for JetBrains products\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/c05fb3d052b415fb2d6051df939f3b7903a76afe\"\u003e\u003ccode\u003ec05fb3d\u003c/code\u003e\u003c/a\u003e Bump Maven to 3.9.12 and Wrapper to 3.3.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/assertj/assertj/compare/assertj-build-3.27.6...assertj-build-3.27.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.2 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a...\n\n_Description has been truncated_","html_url":"https://github.com/BlindMint/booklore/pull/15","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlindMint%2Fbooklore/issues/15","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/15/packages"},{"uuid":"4499518853","node_id":"PR_kwDORprh4c7eL9QV","number":40,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 15 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-22T03:12:50.000Z","updated_at":"2026-05-22T03:17:36.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":15,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.1.1","new_version":"12.6.2"},{"name":"org.projectlombok:lombok","old_version":"1.18.44","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:jbig2-imageio","old_version":"3.0.4","new_version":"3.0.5"},{"name":"com.github.RouHim:jaudiotagger","old_version":"2.0.18","new_version":"2.0.21"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.6.0","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.7","new_version":"4.0.8"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.3","new_version":"3.2.4","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.3.0.Final","new_version":"7.3.5.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 15 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.1.1` | `12.6.2` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.44` | `1.18.46` |\n| org.apache.pdfbox:jbig2-imageio | `3.0.4` | `3.0.5` |\n| com.github.RouHim:jaudiotagger | `2.0.18` | `2.0.21` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.6.0` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.7` | `4.0.8` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.3` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.3` | `3.2.4` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.3.0.Final` | `7.3.5.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.5.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.1.1 to 12.6.2\n\nUpdates `org.projectlombok:lombok` from 1.18.44 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.44...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:jbig2-imageio` from 3.0.4 to 3.0.5\n\nUpdates `com.github.RouHim:jaudiotagger` from 2.0.18 to 2.0.21\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.6.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Gauthier Roebroeck, Robin Schimpf\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.10...v7.6.0\"\u003e7.6.0\u003c/a\u003e (2026-05-13)\u003c/h1\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\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/junrar/junrar/commit/cb4b7fdb84269e95741fa22120e08ceb15a06152\"\u003e\u003ccode\u003ecb4b7fd\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper to 9.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/0bb56b3df4e3b6d14f73de92746a2eb47dd2d7a3\"\u003e\u003ccode\u003e0bb56b3\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/ca621b22421f9e846df23112b32113230610c8d9\"\u003e\u003ccode\u003eca621b2\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/e0874d213832bbeaa8eb265c79479b01b5fa7392\"\u003e\u003ccode\u003ee0874d2\u003c/code\u003e\u003c/a\u003e feat: support random access for files in solid RAR4 archives\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/90f0548c728b0bf2e94f6e26f9e6396d9d0a7262\"\u003e\u003ccode\u003e90f0548\u003c/code\u003e\u003c/a\u003e build(deps): bump org.jreleaser from 1.23.0 to 1.24.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/83a5d085dc84991226229fef1515cc902d129241\"\u003e\u003ccode\u003e83a5d08\u003c/code\u003e\u003c/a\u003e build(deps): bump commons-io:commons-io from 2.21.0 to 2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/338efcb5472be051989fbafd7179d561c71722eb\"\u003e\u003ccode\u003e338efcb\u003c/code\u003e\u003c/a\u003e ci: replace deprecated action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/5270d235ade54d96dfc9958ab06f495fbbd169e7\"\u003e\u003ccode\u003e5270d23\u003c/code\u003e\u003c/a\u003e perf: replace RarCRC.checkCrc with java.util.zip.CRC32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d5abcdb9af988ddfa76e98d80787e15525488332\"\u003e\u003ccode\u003ed5abcdb\u003c/code\u003e\u003c/a\u003e build(deps): bump com.github.ben-manes.versions from 0.53.0 to 0.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/edadb28896962fdcf754029bafd0994aaff24530\"\u003e\u003ccode\u003eedadb28\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.10 [skip ci]\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.7 to 4.0.8\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/c2ea79e9178f0aaa5e4f381c644140357bfc307e\"\u003e\u003ccode\u003ec2ea79e\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3906b27dcdde8fc6a4fef193147109b70bf2f0dc\"\u003e\u003ccode\u003e3906b27\u003c/code\u003e\u003c/a\u003e Prep for 3.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/b17b616c7dc264cfef26f9dd28eaf54bc40b5c4c\"\u003e\u003ccode\u003eb17b616\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/36cf9995cff15aa3e69786da1d6c52f208fddf8a\"\u003e\u003ccode\u003e36cf999\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-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.ben-manes.caffeine:caffeine` from 3.2.3 to 3.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ben-manes/caffeine/releases\"\u003ecom.github.ben-manes.caffeine:caffeine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved access expiration's read performance by avoiding false sharing effects caused by the timestamp update\u003c/li\u003e\n\u003cli\u003eFixed head-of-line blocking of expiration queues caused by in-flight async entries (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed various minor issues found using AI audits\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://docs.oracle.com/en/java/javase/25/docs/api//java.base/java/io/ObjectInputFilter.html\"\u003eObjectInputFilter\u003c/a\u003e support to JCache\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/836b65c0a83e5d1641ded9c6de578654bc04b2e9\"\u003e\u003ccode\u003e836b65c\u003c/code\u003e\u003c/a\u003e use a consistent expiration tolerance calculation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0dc7daf962730048fe46ae4626827afbb97ddf92\"\u003e\u003ccode\u003e0dc7daf\u003c/code\u003e\u003c/a\u003e resurrect in-flight async entries on expiration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0bac8b54fd634ffe95d35ccd1d94daba95e7b369\"\u003e\u003ccode\u003e0bac8b5\u003c/code\u003e\u003c/a\u003e handle head-of-line blocking of expiration queues (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/ff258366de0a89129152ead72524ce88f8fca67b\"\u003e\u003ccode\u003eff25836\u003c/code\u003e\u003c/a\u003e test polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f3a6176e2e3a7fe085214472858c6029c108fc3f\"\u003e\u003ccode\u003ef3a6176\u003c/code\u003e\u003c/a\u003e Fix JCache close/createCache races and recursive teardown\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/622fbe7dbf7606f114b956205706935be2fcf3c8\"\u003e\u003ccode\u003e622fbe7\u003c/code\u003e\u003c/a\u003e Fix removal in identity views and widen hill-climber counters\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/8da5a7a05d8b725c9dbd577be8ffaf2372aa7e23\"\u003e\u003ccode\u003e8da5a7a\u003c/code\u003e\u003c/a\u003e defer weighing the entry until after the putIfAbsent hit fast-path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/94ad0ff8556c9923a8d9746ab85af9ee830dd051\"\u003e\u003ccode\u003e94ad0ff\u003c/code\u003e\u003c/a\u003e Record eviction stats before notifying the removal listener consistently\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f94c0113d0c98dc0afaadf1f6748ea280aa4dff7\"\u003e\u003ccode\u003ef94c011\u003c/code\u003e\u003c/a\u003e Auto-assert eviction stats alongside notifications.withCause.exclusively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/2e945e090fbff4f96251dfe1bacba3780a5bdb0c\"\u003e\u003ccode\u003e2e945e0\u003c/code\u003e\u003c/a\u003e Skip timestamp writes within tolerance on the read path.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ben-manes/caffeine/compare/v3.2.3...v3.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.3.0.Final to 7.3.5.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 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.0...v9.5.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/Owemeone/grimmory/pull/40","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Owemeone%2Fgrimmory/issues/40","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/40/packages"},{"uuid":"4403511891","node_id":"PR_kwDORvJjTc7ZYe1x","number":26,"state":"closed","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 17 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-05-22T03:12:36.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-08T03:12:00.000Z","updated_at":"2026-05-22T03:12:38.000Z","time_to_close":1209636,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":17,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.0.3","new_version":"12.5.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"com.github.RouHim:jaudiotagger","old_version":"2.0.16","new_version":"2.0.19"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.6","new_version":"4.0.8"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.3","new_version":"3.2.4","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.6.Final","new_version":"7.3.3.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 15 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.0.3` | `12.5.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| com.github.RouHim:jaudiotagger | `2.0.16` | `2.0.19` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.6` | `4.0.8` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.3` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.3` | `3.2.4` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.2.6.Final` | `7.3.3.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.5.0` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.0.3 to 12.5.0\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `com.github.RouHim:jaudiotagger` from 2.0.16 to 2.0.19\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.6 to 4.0.8\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/c2ea79e9178f0aaa5e4f381c644140357bfc307e\"\u003e\u003ccode\u003ec2ea79e\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3906b27dcdde8fc6a4fef193147109b70bf2f0dc\"\u003e\u003ccode\u003e3906b27\u003c/code\u003e\u003c/a\u003e Prep for 3.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/b17b616c7dc264cfef26f9dd28eaf54bc40b5c4c\"\u003e\u003ccode\u003eb17b616\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/36cf9995cff15aa3e69786da1d6c52f208fddf8a\"\u003e\u003ccode\u003e36cf999\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-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.ben-manes.caffeine:caffeine` from 3.2.3 to 3.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ben-manes/caffeine/releases\"\u003ecom.github.ben-manes.caffeine:caffeine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved access expiration's read performance by avoiding false sharing effects caused by the timestamp update\u003c/li\u003e\n\u003cli\u003eFixed head-of-line blocking of expiration queues caused by in-flight async entries (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed various minor issues found using AI audits\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://docs.oracle.com/en/java/javase/25/docs/api//java.base/java/io/ObjectInputFilter.html\"\u003eObjectInputFilter\u003c/a\u003e support to JCache\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/836b65c0a83e5d1641ded9c6de578654bc04b2e9\"\u003e\u003ccode\u003e836b65c\u003c/code\u003e\u003c/a\u003e use a consistent expiration tolerance calculation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0dc7daf962730048fe46ae4626827afbb97ddf92\"\u003e\u003ccode\u003e0dc7daf\u003c/code\u003e\u003c/a\u003e resurrect in-flight async entries on expiration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0bac8b54fd634ffe95d35ccd1d94daba95e7b369\"\u003e\u003ccode\u003e0bac8b5\u003c/code\u003e\u003c/a\u003e handle head-of-line blocking of expiration queues (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/ff258366de0a89129152ead72524ce88f8fca67b\"\u003e\u003ccode\u003eff25836\u003c/code\u003e\u003c/a\u003e test polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f3a6176e2e3a7fe085214472858c6029c108fc3f\"\u003e\u003ccode\u003ef3a6176\u003c/code\u003e\u003c/a\u003e Fix JCache close/createCache races and recursive teardown\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/622fbe7dbf7606f114b956205706935be2fcf3c8\"\u003e\u003ccode\u003e622fbe7\u003c/code\u003e\u003c/a\u003e Fix removal in identity views and widen hill-climber counters\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/8da5a7a05d8b725c9dbd577be8ffaf2372aa7e23\"\u003e\u003ccode\u003e8da5a7a\u003c/code\u003e\u003c/a\u003e defer weighing the entry until after the putIfAbsent hit fast-path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/94ad0ff8556c9923a8d9746ab85af9ee830dd051\"\u003e\u003ccode\u003e94ad0ff\u003c/code\u003e\u003c/a\u003e Record eviction stats before notifying the removal listener consistently\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f94c0113d0c98dc0afaadf1f6748ea280aa4dff7\"\u003e\u003ccode\u003ef94c011\u003c/code\u003e\u003c/a\u003e Auto-assert eviction stats alongside notifications.withCause.exclusively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/2e945e090fbff4f96251dfe1bacba3780a5bdb0c\"\u003e\u003ccode\u003e2e945e0\u003c/code\u003e\u003c/a\u003e Skip timestamp writes within tolerance on the read path.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ben-manes/caffeine/compare/v3.2.3...v3.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.2.6.Final to 7.3.3.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 to 9.5.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.5.0\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.5.0.\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.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/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.0 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.5.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.5.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.5.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.5.0 RC4\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/3fe117d68f3907790f3809f121aa36303a9151f8\"\u003e\u003ccode\u003e3fe117d\u003c/code\u003e\u003c/a\u003e Update jdks.yaml (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37703\"\u003e#37703\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/33d145af6fbe7cf7c9d84646b6d7f32fea91d5e2\"\u003e\u003ccode\u003e33d145a\u003c/code\u003e\u003c/a\u003e Update jdks.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7a05d1ed48442eb5da4d6e2b6593da55cdec1da\"\u003e\u003ccode\u003ef7a05d1\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37654\"\u003e#37654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/266facdcbcb0b4c60120cc118eaf0f652bfcdfe5\"\u003e\u003ccode\u003e266facd\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0ad6dd8e143455707e444aa7e3d38327a3366513\"\u003e\u003ccode\u003e0ad6dd8\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37646\"\u003e#37646\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/966025d5850d46c9158a2f25e4096222277ecf57\"\u003e\u003ccode\u003e966025d\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e7455734449e422accebf44cf7b31bf93e3a770c\"\u003e\u003ccode\u003ee745573\u003c/code\u003e\u003c/a\u003e Polish IP docs (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37642\"\u003e#37642\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/d5cfd079acd2c8f1182edd6ec23dbab571132d0a\"\u003e\u003ccode\u003ed5cfd07\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37629\"\u003e#37629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/acdf0c36fa13ba09a7ff5b51f79b9af4b1a097ee\"\u003e\u003ccode\u003eacdf0c3\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7d0e4f6f7896426a8b24091388e4c252b62faef\"\u003e\u003ccode\u003ef7d0e4f\u003c/code\u003e\u003c/a\u003e Rename anchor\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.0...v9.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cdome/ollumi/pull/26","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdome%2Follumi/issues/26","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/26/packages"},{"uuid":"4391129491","node_id":"PR_kwDOBQcfMM7YwMSb","number":79,"state":"closed","title":"Bump the build-dependencies group across 1 directory with 46 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-07T22:30:52.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-06T11:58:09.000Z","updated_at":"2026-05-07T22:30:53.000Z","time_to_close":124363,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"build-dependencies","update_count":46,"packages":[{"name":"com.gradle.develocity","old_version":"4.3.2","new_version":"4.4.1"},{"name":"com.gradle.common-custom-user-data-gradle-plugin","old_version":"2.4.0","new_version":"2.6.0"},{"name":"org.checkerframework:checker-qual-android","old_version":"3.53.1","new_version":"4.1.0","repository_url":"https://github.com/typetools/checker-framework"},{"name":"org.checkerframework:checker","old_version":"3.53.1","new_version":"4.1.0","repository_url":"https://github.com/typetools/checker-framework"},{"name":"org.ehcache:ehcache","old_version":"3.11.1","new_version":"3.12.0","repository_url":"https://github.com/ehcache/ehcache3"},{"name":"org.junit.jupiter:junit-jupiter","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-api","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-engine","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-params","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.platform:junit-platform-launcher","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"ch.qos.logback:logback-classic","old_version":"1.5.18","new_version":"1.5.32","repository_url":"https://github.com/qos-ch/logback"},{"name":"org.jboss.byteman:byteman-bmunit","old_version":"4.0.24","new_version":"4.0.26"},{"name":"org.mockito:mockito-core","old_version":"5.20.0","new_version":"5.23.0","repository_url":"https://github.com/mockito/mockito"},{"name":"org.mockito:mockito-junit-jupiter","old_version":"5.20.0","new_version":"5.23.0","repository_url":"https://github.com/mockito/mockito"},{"name":"org.jboss.weld.se:weld-se-shaded","old_version":"6.0.3.Final","new_version":"6.0.4.Final"},{"name":"org.dom4j:dom4j","old_version":"2.1.3","new_version":"2.2.0","repository_url":"https://github.com/dom4j/dom4j"},{"name":"org.orbisgis:h2gis","old_version":"2.2.4","new_version":"2.2.5","repository_url":"https://github.com/orbisgis/H2GIS"},{"name":"org.postgresql:postgresql","old_version":"42.7.8","new_version":"42.7.11","repository_url":"https://github.com/pgjdbc/pgjdbc"},{"name":"com.enterprisedb:edb-jdbc","old_version":"42.7.3.3","new_version":"42.7.3.4","repository_url":"https://github.com/EnterpriseDB/edb-jdbc"},{"name":"com.mysql:mysql-connector-j","old_version":"9.6.0","new_version":"9.7.0","repository_url":"https://github.com/mysql/mysql-connector-j"},{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.5","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"com.oracle.database.jdbc:ojdbc-provider-jackson-oson","old_version":"1.0.4","new_version":"1.0.6","repository_url":"https://github.com/oracle/ojdbc-extensions"},{"name":"com.microsoft.sqlserver:mssql-jdbc","old_version":"13.2.1.jre11","new_version":"13.4.0.jre11","repository_url":"https://github.com/Microsoft/mssql-jdbc"},{"name":"com.ibm.db2:jcc","old_version":"12.1.3.0","new_version":"12.1.4.0"},{"name":"com.sap.cloud.db.jdbc:ngdbc","old_version":"2.26.11","new_version":"2.28.7"},{"name":"com.teradata.jdbc:terajdbc","old_version":"20.00.00.51","new_version":"20.00.00.54","repository_url":"https://github.com/Teradata/jdbc-driver"},{"name":"com.ibm.informix:jdbc","old_version":"15.0.0.2","new_version":"15.0.1.1"},{"name":"org.firebirdsql.jdbc:jaybird","old_version":"6.0.3","new_version":"6.0.5","repository_url":"https://github.com/FirebirdSQL/jaybird"},{"name":"com.altibase:altibase-jdbc","old_version":"7.3.0.1.1","new_version":"8.1.0.0.1"},{"name":"com.google.cloud:google-cloud-spanner-jdbc","old_version":"2.35.5","new_version":"2.38.0","repository_url":"https://github.com/googleapis/google-cloud-java"},{"name":"org.apache.maven:maven-core","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-artifact","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-embedder","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-compat","old_version":"3.9.14","new_version":"3.9.15","repository_url":"https://github.com/apache/maven"},{"name":"org.apache.maven.plugin-tools:maven-plugin-tools-annotations","old_version":"3.15.1","new_version":"3.15.2","repository_url":"https://github.com/apache/maven-plugin-tools"},{"name":"org.apache.maven.resolver:maven-resolver-transport-http","old_version":"1.9.24","new_version":"1.9.27"},{"name":"org.apache.maven.resolver:maven-resolver-connector-basic","old_version":"1.9.24","new_version":"1.9.27","repository_url":"https://github.com/apache/maven-resolver"},{"name":"de.thetaphi:forbiddenapis","old_version":"3.8","new_version":"3.10"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.asciidoctor:asciidoctorj","old_version":"3.0.0","new_version":"3.0.1","repository_url":"https://github.com/asciidoctor/asciidoctorj"},{"name":"com.diffplug.spotless","old_version":"8.3.0","new_version":"8.4.0"},{"name":"com.gradle.plugin-publish","old_version":"2.0.0","new_version":"2.1.1"},{"name":"org.jetbrains.kotlin.jvm","old_version":"2.0.20","new_version":"2.3.21"},{"name":"biz.aQute.bnd","old_version":"7.2.1","new_version":"7.2.3"},{"name":"biz.aQute.bnd.builder","old_version":"7.2.1","new_version":"7.2.3"}],"path":null,"ecosystem":"maven"},"body":"Bumps the build-dependencies group with 46 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.gradle.develocity | `4.3.2` | `4.4.1` |\n| com.gradle.common-custom-user-data-gradle-plugin | `2.4.0` | `2.6.0` |\n| [org.checkerframework:checker-qual-android](https://github.com/typetools/checker-framework) | `3.53.1` | `4.1.0` |\n| [org.checkerframework:checker](https://github.com/typetools/checker-framework) | `3.53.1` | `4.1.0` |\n| [org.ehcache:ehcache](https://github.com/ehcache/ehcache3) | `3.11.1` | `3.12.0` |\n| [org.junit.jupiter:junit-jupiter](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-params](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.platform:junit-platform-launcher](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) | `1.5.18` | `1.5.32` |\n| org.jboss.byteman:byteman-bmunit | `4.0.24` | `4.0.26` |\n| [org.mockito:mockito-core](https://github.com/mockito/mockito) | `5.20.0` | `5.23.0` |\n| [org.mockito:mockito-junit-jupiter](https://github.com/mockito/mockito) | `5.20.0` | `5.23.0` |\n| org.jboss.weld.se:weld-se-shaded | `6.0.3.Final` | `6.0.4.Final` |\n| [org.dom4j:dom4j](https://github.com/dom4j/dom4j) | `2.1.3` | `2.2.0` |\n| [org.orbisgis:h2gis](https://github.com/orbisgis/H2GIS) | `2.2.4` | `2.2.5` |\n| [org.postgresql:postgresql](https://github.com/pgjdbc/pgjdbc) | `42.7.8` | `42.7.11` |\n| [com.enterprisedb:edb-jdbc](https://github.com/EnterpriseDB/edb-jdbc) | `42.7.3.3` | `42.7.3.4` |\n| [com.mysql:mysql-connector-j](https://github.com/mysql/mysql-connector-j) | `9.6.0` | `9.7.0` |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.5` | `3.5.8` |\n| [com.oracle.database.jdbc:ojdbc-provider-jackson-oson](https://github.com/oracle/ojdbc-extensions) | `1.0.4` | `1.0.6` |\n| [com.microsoft.sqlserver:mssql-jdbc](https://github.com/Microsoft/mssql-jdbc) | `13.2.1.jre11` | `13.4.0.jre11` |\n| com.ibm.db2:jcc | `12.1.3.0` | `12.1.4.0` |\n| com.sap.cloud.db.jdbc:ngdbc | `2.26.11` | `2.28.7` |\n| [com.teradata.jdbc:terajdbc](https://github.com/Teradata/jdbc-driver) | `20.00.00.51` | `20.00.00.54` |\n| com.ibm.informix:jdbc | `15.0.0.2` | `15.0.1.1` |\n| [org.firebirdsql.jdbc:jaybird](https://github.com/FirebirdSQL/jaybird) | `6.0.3` | `6.0.5` |\n| com.altibase:altibase-jdbc | `7.3.0.1.1` | `8.1.0.0.1` |\n| [com.google.cloud:google-cloud-spanner-jdbc](https://github.com/googleapis/google-cloud-java) | `2.35.5` | `2.38.0` |\n| org.apache.maven:maven-core | `3.9.14` | `3.9.15` |\n| org.apache.maven:maven-artifact | `3.9.14` | `3.9.15` |\n| org.apache.maven:maven-embedder | `3.9.14` | `3.9.15` |\n| [org.apache.maven:maven-compat](https://github.com/apache/maven) | `3.9.14` | `3.9.15` |\n| [org.apache.maven.plugin-tools:maven-plugin-tools-annotations](https://github.com/apache/maven-plugin-tools) | `3.15.1` | `3.15.2` |\n| org.apache.maven.resolver:maven-resolver-transport-http | `1.9.24` | `1.9.27` |\n| [org.apache.maven.resolver:maven-resolver-connector-basic](https://github.com/apache/maven-resolver) | `1.9.24` | `1.9.27` |\n| de.thetaphi:forbiddenapis | `3.8` | `3.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.asciidoctor:asciidoctorj](https://github.com/asciidoctor/asciidoctorj) | `3.0.0` | `3.0.1` |\n| com.diffplug.spotless | `8.3.0` | `8.4.0` |\n| com.gradle.plugin-publish | `2.0.0` | `2.1.1` |\n| org.jetbrains.kotlin.jvm | `2.0.20` | `2.3.21` |\n| biz.aQute.bnd | `7.2.1` | `7.2.3` |\n| biz.aQute.bnd.builder | `7.2.1` | `7.2.3` |\n\n\nUpdates `com.gradle.develocity` from 4.3.2 to 4.4.1\n\nUpdates `com.gradle.common-custom-user-data-gradle-plugin` from 2.4.0 to 2.6.0\n\nUpdates `org.checkerframework:checker-qual-android` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker-qual-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker-qual-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.checkerframework:checker` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.checkerframework:checker` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.ehcache:ehcache` from 3.11.1 to 3.12.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/f4a96f47758e8d0bbe3de81c371bdbb33d620b88\"\u003e\u003ccode\u003ef4a96f4\u003c/code\u003e\u003c/a\u003e Set ehcacheVersion to 3.12.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/ae90183364e2b67e5bc07c01be6f055b0d193099\"\u003e\u003ccode\u003eae90183\u003c/code\u003e\u003c/a\u003e TDB-20139 restore sonatype deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/bc9309ba47ad255872017ca71ba29240d1800c17\"\u003e\u003ccode\u003ebc9309b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3318\"\u003e#3318\u003c/a\u003e from ehcache/upgrade/master\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/2754c27f3bd53d620d8f4837c7c9e33337cc7c11\"\u003e\u003ccode\u003e2754c27\u003c/code\u003e\u003c/a\u003e CVE-2025-67030: Update plexus-utils to 3.6.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/87270e4b3b93742c8e3e5dcae733ee1f10f4ad6e\"\u003e\u003ccode\u003e87270e4\u003c/code\u003e\u003c/a\u003e CVE-2026-1605: Update Jetty to 12.1.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/0be598f1212d72f003700153f8faccebc09effc2\"\u003e\u003ccode\u003e0be598f\u003c/code\u003e\u003c/a\u003e Ignoring CVE-2025-67030\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/59cc21116254b6b1b5970b79272f0b3abfbc6808\"\u003e\u003ccode\u003e59cc211\u003c/code\u003e\u003c/a\u003e Upgrade platform and core\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/2badca4e5a7bb3039ae7521e83c6bf114655cf74\"\u003e\u003ccode\u003e2badca4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3311\"\u003e#3311\u003c/a\u003e from aurbroszniowski/TDB-19854-upgrade-dependencies-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/d532bbce9f72a1e253c4df1fbe6230a96b1e953c\"\u003e\u003ccode\u003ed532bbc\u003c/code\u003e\u003c/a\u003e TDB-19854\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/b6df7aac037d55ee350d242d9b6edd69f6913dbc\"\u003e\u003ccode\u003eb6df7aa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3310\"\u003e#3310\u003c/a\u003e from ehcache/platform-5.11.6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ehcache/ehcache3/compare/v3.11.1...v3.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-api` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-api's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-engine` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-params` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-params's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\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.1 to 6.0.3\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.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-api` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-api's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-engine` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-params` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-params's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\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.1 to 6.0.3\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.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.platform:junit-platform-launcher` from 6.0.1 to 6.0.3\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.platform:junit-platform-launcher's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ch.qos.logback:logback-classic` from 1.5.18 to 1.5.32\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qos-ch/logback/releases\"\u003ech.qos.logback:logback-classic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eLogback 1.5.32\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-16 Release of logback version 1.5.32\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In \u003ccode\u003eDefaultProcessor, \u003c/code\u003efixed incorrect check for dependencies contained within a parent model. Previous only the direct children were scanned. This fixes \u003ca href=\"https://redirect.github.com/qos-ch/logback-access/issues/34\"\u003elogback-access/issues/34\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit e807335a67535b4eacce94e942c0bcb649665d93 associated with the tag v_1.5.32. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback  1.5.31\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-14 Release of logback version 1.5.31\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Fixed missing META-INF/services directory in logback-classic.jar. This issue rendered logback-classic version 1.5.30 unusable with SLF4J.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit 168e42f9f9a18a3ffdf31eb2bfe80a71e33ecd8b associated with the tag v_1.5.31. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.30\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-14 Release of logback  version 1.5.30\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• \u003cstrong\u003eIn this version, logback-classic.jar was missing the META-INF/services directory, making it unusable with SLF4J. Version 1.5.31 (released later on the same day) fixes this issue.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Fix scanning issue when an included file becomes available at a later time. This problem was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1021\"\u003eissues/1021\u003c/a\u003e by Sergey Nazarov.\u003c/p\u003e\n\u003cp\u003e• Standardized code for version checking across modules.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit 44164f10ca3fb44ce0e68519f13564b87e3aca61 associated with the tag v_1.5.30. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.29\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-09 Release of logback version 1.5.29\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In response to \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1017\"\u003eissues/1017\u003c/a\u003e, appender names and appender references are once again subject to variable substitution, reverting the change introduced in version 1.5.28.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.28\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-06 Release of logback version 1.5.28\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Appender names or appender references are no longer subject to variable substitution.\u003c/p\u003e\n\u003cp\u003e• Fixed issue with configurations with conditionals encompassing appenders. This was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1016\"\u003eissues/1016\u003c/a\u003e reported by Sergey Sazonov.\u003c/p\u003e\n\u003cp\u003e• The \u003c!-- raw HTML omitted --\u003e element now admits a 'scan' attribute which can be used to override the 'scan' attribute in the \u003c!-- raw HTML omitted --\u003e element.\u003c/p\u003e\n\u003cp\u003e• Fixed NullPointerException thrown by VersionUtil.checkForVersionEquality method occurring with GraalVM Native Images. This issue was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1014\"\u003eissues/1014\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit e7a1855ab562bb102333f754603ff89359bf3cfc associated with the tag v_1.5.28. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.27\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-01-30 Release of logback version 1.5.27\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Updated license to Eclipse Public License version 2.0 from version 1.0, retaining the GPL 2.1 dual-license.\u003c/p\u003e\n\u003cp\u003e• Fixed missing MDC data transmitted by \u003ccode\u003eSocketAppender\u003c/code\u003e reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1010\"\u003eissues/1010\u003c/a\u003e by Lars Vogel.\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/qos-ch/logback/commit/e807335a67535b4eacce94e942c0bcb649665d93\"\u003e\u003ccode\u003ee807335\u003c/code\u003e\u003c/a\u003e prepare release 1.5.32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https:...\n\n_Description has been truncated_","html_url":"https://github.com/marko-bekhta/hibernate-orm/pull/79","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/marko-bekhta%2Fhibernate-orm/issues/79","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/79/packages"},{"uuid":"4390841867","node_id":"PR_kwDOAA6qDM7YvP0h","number":12330,"state":"closed","title":"Bump the build-dependencies group across 1 directory with 46 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-07T00:53:52.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-06T11:06:24.000Z","updated_at":"2026-05-07T00:53:54.000Z","time_to_close":49648,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"build-dependencies","update_count":46,"packages":[{"name":"com.gradle.develocity","old_version":"4.3.2","new_version":"4.4.1"},{"name":"com.gradle.common-custom-user-data-gradle-plugin","old_version":"2.4.0","new_version":"2.6.0"},{"name":"org.checkerframework:checker-qual-android","old_version":"3.53.1","new_version":"4.1.0","repository_url":"https://github.com/typetools/checker-framework"},{"name":"org.checkerframework:checker","old_version":"3.53.1","new_version":"4.1.0","repository_url":"https://github.com/typetools/checker-framework"},{"name":"org.ehcache:ehcache","old_version":"3.11.1","new_version":"3.12.0","repository_url":"https://github.com/ehcache/ehcache3"},{"name":"org.junit.jupiter:junit-jupiter","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-api","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-engine","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-params","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.platform:junit-platform-launcher","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"ch.qos.logback:logback-classic","old_version":"1.5.18","new_version":"1.5.32","repository_url":"https://github.com/qos-ch/logback"},{"name":"org.jboss.byteman:byteman-bmunit","old_version":"4.0.24","new_version":"4.0.26"},{"name":"org.mockito:mockito-core","old_version":"5.20.0","new_version":"5.23.0","repository_url":"https://github.com/mockito/mockito"},{"name":"org.mockito:mockito-junit-jupiter","old_version":"5.20.0","new_version":"5.23.0","repository_url":"https://github.com/mockito/mockito"},{"name":"org.jboss.weld.se:weld-se-shaded","old_version":"6.0.3.Final","new_version":"6.0.4.Final"},{"name":"org.dom4j:dom4j","old_version":"2.1.3","new_version":"2.2.0","repository_url":"https://github.com/dom4j/dom4j"},{"name":"org.orbisgis:h2gis","old_version":"2.2.4","new_version":"2.2.5","repository_url":"https://github.com/orbisgis/H2GIS"},{"name":"org.postgresql:postgresql","old_version":"42.7.8","new_version":"42.7.11","repository_url":"https://github.com/pgjdbc/pgjdbc"},{"name":"com.enterprisedb:edb-jdbc","old_version":"42.7.3.3","new_version":"42.7.3.4","repository_url":"https://github.com/EnterpriseDB/edb-jdbc"},{"name":"com.mysql:mysql-connector-j","old_version":"9.6.0","new_version":"9.7.0","repository_url":"https://github.com/mysql/mysql-connector-j"},{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.5","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"com.oracle.database.jdbc:ojdbc-provider-jackson-oson","old_version":"1.0.4","new_version":"1.0.6","repository_url":"https://github.com/oracle/ojdbc-extensions"},{"name":"com.microsoft.sqlserver:mssql-jdbc","old_version":"13.2.1.jre11","new_version":"13.4.0.jre11","repository_url":"https://github.com/Microsoft/mssql-jdbc"},{"name":"com.ibm.db2:jcc","old_version":"12.1.3.0","new_version":"12.1.4.0"},{"name":"com.sap.cloud.db.jdbc:ngdbc","old_version":"2.26.11","new_version":"2.28.7"},{"name":"com.teradata.jdbc:terajdbc","old_version":"20.00.00.51","new_version":"20.00.00.54","repository_url":"https://github.com/Teradata/jdbc-driver"},{"name":"com.ibm.informix:jdbc","old_version":"15.0.0.2","new_version":"15.0.1.1"},{"name":"org.firebirdsql.jdbc:jaybird","old_version":"6.0.3","new_version":"6.0.5","repository_url":"https://github.com/FirebirdSQL/jaybird"},{"name":"com.altibase:altibase-jdbc","old_version":"7.3.0.1.1","new_version":"8.1.0.0.1"},{"name":"com.google.cloud:google-cloud-spanner-jdbc","old_version":"2.35.5","new_version":"2.38.0","repository_url":"https://github.com/googleapis/google-cloud-java"},{"name":"org.apache.maven:maven-core","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-artifact","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-embedder","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-compat","old_version":"3.9.14","new_version":"3.9.15","repository_url":"https://github.com/apache/maven"},{"name":"org.apache.maven.plugin-tools:maven-plugin-tools-annotations","old_version":"3.15.1","new_version":"3.15.2","repository_url":"https://github.com/apache/maven-plugin-tools"},{"name":"org.apache.maven.resolver:maven-resolver-transport-http","old_version":"1.9.24","new_version":"1.9.27"},{"name":"org.apache.maven.resolver:maven-resolver-connector-basic","old_version":"1.9.24","new_version":"1.9.27","repository_url":"https://github.com/apache/maven-resolver"},{"name":"de.thetaphi:forbiddenapis","old_version":"3.8","new_version":"3.10"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.asciidoctor:asciidoctorj","old_version":"3.0.0","new_version":"3.0.1","repository_url":"https://github.com/asciidoctor/asciidoctorj"},{"name":"com.diffplug.spotless","old_version":"8.3.0","new_version":"8.4.0"},{"name":"com.gradle.plugin-publish","old_version":"2.0.0","new_version":"2.1.1"},{"name":"org.jetbrains.kotlin.jvm","old_version":"2.0.20","new_version":"2.3.21"},{"name":"biz.aQute.bnd","old_version":"7.2.1","new_version":"7.2.3"},{"name":"biz.aQute.bnd.builder","old_version":"7.2.1","new_version":"7.2.3"}],"path":null,"ecosystem":"maven"},"body":"Bumps the build-dependencies group with 46 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.gradle.develocity | `4.3.2` | `4.4.1` |\n| com.gradle.common-custom-user-data-gradle-plugin | `2.4.0` | `2.6.0` |\n| [org.checkerframework:checker-qual-android](https://github.com/typetools/checker-framework) | `3.53.1` | `4.1.0` |\n| [org.checkerframework:checker](https://github.com/typetools/checker-framework) | `3.53.1` | `4.1.0` |\n| [org.ehcache:ehcache](https://github.com/ehcache/ehcache3) | `3.11.1` | `3.12.0` |\n| [org.junit.jupiter:junit-jupiter](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-params](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.platform:junit-platform-launcher](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) | `1.5.18` | `1.5.32` |\n| org.jboss.byteman:byteman-bmunit | `4.0.24` | `4.0.26` |\n| [org.mockito:mockito-core](https://github.com/mockito/mockito) | `5.20.0` | `5.23.0` |\n| [org.mockito:mockito-junit-jupiter](https://github.com/mockito/mockito) | `5.20.0` | `5.23.0` |\n| org.jboss.weld.se:weld-se-shaded | `6.0.3.Final` | `6.0.4.Final` |\n| [org.dom4j:dom4j](https://github.com/dom4j/dom4j) | `2.1.3` | `2.2.0` |\n| [org.orbisgis:h2gis](https://github.com/orbisgis/H2GIS) | `2.2.4` | `2.2.5` |\n| [org.postgresql:postgresql](https://github.com/pgjdbc/pgjdbc) | `42.7.8` | `42.7.11` |\n| [com.enterprisedb:edb-jdbc](https://github.com/EnterpriseDB/edb-jdbc) | `42.7.3.3` | `42.7.3.4` |\n| [com.mysql:mysql-connector-j](https://github.com/mysql/mysql-connector-j) | `9.6.0` | `9.7.0` |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.5` | `3.5.8` |\n| [com.oracle.database.jdbc:ojdbc-provider-jackson-oson](https://github.com/oracle/ojdbc-extensions) | `1.0.4` | `1.0.6` |\n| [com.microsoft.sqlserver:mssql-jdbc](https://github.com/Microsoft/mssql-jdbc) | `13.2.1.jre11` | `13.4.0.jre11` |\n| com.ibm.db2:jcc | `12.1.3.0` | `12.1.4.0` |\n| com.sap.cloud.db.jdbc:ngdbc | `2.26.11` | `2.28.7` |\n| [com.teradata.jdbc:terajdbc](https://github.com/Teradata/jdbc-driver) | `20.00.00.51` | `20.00.00.54` |\n| com.ibm.informix:jdbc | `15.0.0.2` | `15.0.1.1` |\n| [org.firebirdsql.jdbc:jaybird](https://github.com/FirebirdSQL/jaybird) | `6.0.3` | `6.0.5` |\n| com.altibase:altibase-jdbc | `7.3.0.1.1` | `8.1.0.0.1` |\n| [com.google.cloud:google-cloud-spanner-jdbc](https://github.com/googleapis/google-cloud-java) | `2.35.5` | `2.38.0` |\n| org.apache.maven:maven-core | `3.9.14` | `3.9.15` |\n| org.apache.maven:maven-artifact | `3.9.14` | `3.9.15` |\n| org.apache.maven:maven-embedder | `3.9.14` | `3.9.15` |\n| [org.apache.maven:maven-compat](https://github.com/apache/maven) | `3.9.14` | `3.9.15` |\n| [org.apache.maven.plugin-tools:maven-plugin-tools-annotations](https://github.com/apache/maven-plugin-tools) | `3.15.1` | `3.15.2` |\n| org.apache.maven.resolver:maven-resolver-transport-http | `1.9.24` | `1.9.27` |\n| [org.apache.maven.resolver:maven-resolver-connector-basic](https://github.com/apache/maven-resolver) | `1.9.24` | `1.9.27` |\n| de.thetaphi:forbiddenapis | `3.8` | `3.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.asciidoctor:asciidoctorj](https://github.com/asciidoctor/asciidoctorj) | `3.0.0` | `3.0.1` |\n| com.diffplug.spotless | `8.3.0` | `8.4.0` |\n| com.gradle.plugin-publish | `2.0.0` | `2.1.1` |\n| org.jetbrains.kotlin.jvm | `2.0.20` | `2.3.21` |\n| biz.aQute.bnd | `7.2.1` | `7.2.3` |\n| biz.aQute.bnd.builder | `7.2.1` | `7.2.3` |\n\n\nUpdates `com.gradle.develocity` from 4.3.2 to 4.4.1\n\nUpdates `com.gradle.common-custom-user-data-gradle-plugin` from 2.4.0 to 2.6.0\n\nUpdates `org.checkerframework:checker-qual-android` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker-qual-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker-qual-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.checkerframework:checker` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.checkerframework:checker` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.ehcache:ehcache` from 3.11.1 to 3.12.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/f4a96f47758e8d0bbe3de81c371bdbb33d620b88\"\u003e\u003ccode\u003ef4a96f4\u003c/code\u003e\u003c/a\u003e Set ehcacheVersion to 3.12.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/ae90183364e2b67e5bc07c01be6f055b0d193099\"\u003e\u003ccode\u003eae90183\u003c/code\u003e\u003c/a\u003e TDB-20139 restore sonatype deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/bc9309ba47ad255872017ca71ba29240d1800c17\"\u003e\u003ccode\u003ebc9309b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3318\"\u003e#3318\u003c/a\u003e from ehcache/upgrade/master\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/2754c27f3bd53d620d8f4837c7c9e33337cc7c11\"\u003e\u003ccode\u003e2754c27\u003c/code\u003e\u003c/a\u003e CVE-2025-67030: Update plexus-utils to 3.6.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/87270e4b3b93742c8e3e5dcae733ee1f10f4ad6e\"\u003e\u003ccode\u003e87270e4\u003c/code\u003e\u003c/a\u003e CVE-2026-1605: Update Jetty to 12.1.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/0be598f1212d72f003700153f8faccebc09effc2\"\u003e\u003ccode\u003e0be598f\u003c/code\u003e\u003c/a\u003e Ignoring CVE-2025-67030\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/59cc21116254b6b1b5970b79272f0b3abfbc6808\"\u003e\u003ccode\u003e59cc211\u003c/code\u003e\u003c/a\u003e Upgrade platform and core\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/2badca4e5a7bb3039ae7521e83c6bf114655cf74\"\u003e\u003ccode\u003e2badca4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3311\"\u003e#3311\u003c/a\u003e from aurbroszniowski/TDB-19854-upgrade-dependencies-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/d532bbce9f72a1e253c4df1fbe6230a96b1e953c\"\u003e\u003ccode\u003ed532bbc\u003c/code\u003e\u003c/a\u003e TDB-19854\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/b6df7aac037d55ee350d242d9b6edd69f6913dbc\"\u003e\u003ccode\u003eb6df7aa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3310\"\u003e#3310\u003c/a\u003e from ehcache/platform-5.11.6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ehcache/ehcache3/compare/v3.11.1...v3.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-api` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-api's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-engine` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-params` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-params's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\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.1 to 6.0.3\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.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-api` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-api's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-engine` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-params` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-params's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\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.1 to 6.0.3\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.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.platform:junit-platform-launcher` from 6.0.1 to 6.0.3\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.platform:junit-platform-launcher's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ch.qos.logback:logback-classic` from 1.5.18 to 1.5.32\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qos-ch/logback/releases\"\u003ech.qos.logback:logback-classic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eLogback 1.5.32\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-16 Release of logback version 1.5.32\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In \u003ccode\u003eDefaultProcessor, \u003c/code\u003efixed incorrect check for dependencies contained within a parent model. Previous only the direct children were scanned. This fixes \u003ca href=\"https://redirect.github.com/qos-ch/logback-access/issues/34\"\u003elogback-access/issues/34\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit e807335a67535b4eacce94e942c0bcb649665d93 associated with the tag v_1.5.32. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback  1.5.31\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-14 Release of logback version 1.5.31\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Fixed missing META-INF/services directory in logback-classic.jar. This issue rendered logback-classic version 1.5.30 unusable with SLF4J.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit 168e42f9f9a18a3ffdf31eb2bfe80a71e33ecd8b associated with the tag v_1.5.31. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.30\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-14 Release of logback  version 1.5.30\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• \u003cstrong\u003eIn this version, logback-classic.jar was missing the META-INF/services directory, making it unusable with SLF4J. Version 1.5.31 (released later on the same day) fixes this issue.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Fix scanning issue when an included file becomes available at a later time. This problem was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1021\"\u003eissues/1021\u003c/a\u003e by Sergey Nazarov.\u003c/p\u003e\n\u003cp\u003e• Standardized code for version checking across modules.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit 44164f10ca3fb44ce0e68519f13564b87e3aca61 associated with the tag v_1.5.30. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.29\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-09 Release of logback version 1.5.29\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In response to \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1017\"\u003eissues/1017\u003c/a\u003e, appender names and appender references are once again subject to variable substitution, reverting the change introduced in version 1.5.28.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.28\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-06 Release of logback version 1.5.28\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Appender names or appender references are no longer subject to variable substitution.\u003c/p\u003e\n\u003cp\u003e• Fixed issue with configurations with conditionals encompassing appenders. This was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1016\"\u003eissues/1016\u003c/a\u003e reported by Sergey Sazonov.\u003c/p\u003e\n\u003cp\u003e• The \u003c!-- raw HTML omitted --\u003e element now admits a 'scan' attribute which can be used to override the 'scan' attribute in the \u003c!-- raw HTML omitted --\u003e element.\u003c/p\u003e\n\u003cp\u003e• Fixed NullPointerException thrown by VersionUtil.checkForVersionEquality method occurring with GraalVM Native Images. This issue was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1014\"\u003eissues/1014\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit e7a1855ab562bb102333f754603ff89359bf3cfc associated with the tag v_1.5.28. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.27\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-01-30 Release of logback version 1.5.27\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Updated license to Eclipse Public License version 2.0 from version 1.0, retaining the GPL 2.1 dual-license.\u003c/p\u003e\n\u003cp\u003e• Fixed missing MDC data transmitted by \u003ccode\u003eSocketAppender\u003c/code\u003e reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1010\"\u003eissues/1010\u003c/a\u003e by Lars Vogel.\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/qos-ch/logback/commit/e807335a67535b4eacce94e942c0bcb649665d93\"\u003e\u003ccode\u003ee807335\u003c/code\u003e\u003c/a\u003e prepare release 1.5.32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https...\n\n_Description has been truncated_","html_url":"https://github.com/hibernate/hibernate-orm/pull/12330","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hibernate%2Fhibernate-orm/issues/12330","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12330/packages"},{"uuid":"4363084166","node_id":"PR_kwDOGTAvb87XWnvu","number":131,"state":"closed","title":"build(deps): bump the versions group with 34 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-01T21:02:41.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-01T05:58:46.000Z","updated_at":"2026-05-01T21:02:51.000Z","time_to_close":54235,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"versions","update_count":34,"packages":[{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"},{"name":"org.xerial:sqlite-jdbc","old_version":"3.51.3.0","new_version":"3.53.0.0","repository_url":"https://github.com/xerial/sqlite-jdbc"},{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.jetbrains.exposed:exposed-core","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/JetBrains/Exposed"},{"name":"org.jetbrains.exposed:exposed-dao","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/JetBrains/Exposed"},{"name":"org.jetbrains.exposed:exposed-java-time","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/JetBrains/Exposed"},{"name":"org.jetbrains.exposed:exposed-jdbc","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/JetBrains/Exposed"},{"name":"com.google.code.gson:gson","old_version":"2.13.2","new_version":"2.14.0","repository_url":"https://github.com/google/gson"},{"name":"com.google.guava:guava","old_version":"33.5.0-jre","new_version":"33.6.0-jre","repository_url":"https://github.com/google/guava"},{"name":"net.dv8tion:JDA","old_version":"6.4.0","new_version":"6.4.1","repository_url":"https://github.com/discord-jda/JDA"},{"name":"ru.astrainteractive.klibs:kstorage","old_version":"4.5.0","new_version":"5.0.4","repository_url":"https://github.com/makeevrserg/klibs.kstorage"},{"name":"ru.astrainteractive.klibs:mikro-core","old_version":"1.22.0","new_version":"1.23.0","repository_url":"https://github.com/makeevrserg/klibs.mikro"},{"name":"ru.astrainteractive.klibs:mikro-extensions-jvm","old_version":"1.22.0","new_version":"1.23.0","repository_url":"https://github.com/makeevrserg/klibs.mikro"},{"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":"org.jetbrains.kotlinx:kotlinx-serialization-protobuf","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"io.ktor:ktor-client-cio","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-client-content-negotiation","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-client-core","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-client-json","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-client-logging","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-serialization-kotlinx-json","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"com.discordsrv:discordsrv","old_version":"1.30.4","new_version":"1.30.5"},{"name":"net.fabricmc:fabric-loader","old_version":"0.18.2","new_version":"0.19.2"},{"name":"net.kyori:adventure-api","old_version":"4.26.1","new_version":"5.0.1","repository_url":"https://github.com/PaperMC/adventure"},{"name":"net.kyori:adventure-text-serializer-gson","old_version":"4.26.1","new_version":"5.0.1","repository_url":"https://github.com/PaperMC/adventure"},{"name":"net.kyori:adventure-text-serializer-legacy","old_version":"4.26.1","new_version":"5.0.1","repository_url":"https://github.com/PaperMC/adventure"},{"name":"net.kyori:adventure-text-minimessage","old_version":"4.26.1","new_version":"5.0.1","repository_url":"https://github.com/PaperMC/adventure"},{"name":"net.kyori:adventure-text-serializer-plain","old_version":"4.26.1","new_version":"5.0.1","repository_url":"https://github.com/PaperMC/adventure"},{"name":"com.github.MockBukkit:MockBukkit","old_version":"4.101.0","new_version":"4.108.0","repository_url":"https://github.com/MockBukkit/MockBukkit"},{"name":"net.neoforged:bus","old_version":"8.0.2","new_version":"8.0.5","repository_url":"https://github.com/NeoForged/Bus"},{"name":"net.neoforged:neoforge","old_version":"21.1.129","new_version":"21.11.42","repository_url":"https://github.com/NeoForged/NeoForge"},{"name":"com.github.retrooper:packetevents-spigot","old_version":"2.11.2","new_version":"2.12.1","repository_url":"https://github.com/retrooper/packetevents"},{"name":"fabric-loom","old_version":"1.14.6","new_version":"1.16.1"},{"name":"net.neoforged.gradle.userdev","old_version":"7.1.20","new_version":"7.1.26"}],"path":null,"ecosystem":"maven"},"body":"Bumps the versions group with 34 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.5.0` |\n| [org.xerial:sqlite-jdbc](https://github.com/xerial/sqlite-jdbc) | `3.51.3.0` | `3.53.0.0` |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| [org.jetbrains.exposed:exposed-core](https://github.com/JetBrains/Exposed) | `1.1.1` | `1.2.0` |\n| [org.jetbrains.exposed:exposed-dao](https://github.com/JetBrains/Exposed) | `1.1.1` | `1.2.0` |\n| [org.jetbrains.exposed:exposed-java-time](https://github.com/JetBrains/Exposed) | `1.1.1` | `1.2.0` |\n| [org.jetbrains.exposed:exposed-jdbc](https://github.com/JetBrains/Exposed) | `1.1.1` | `1.2.0` |\n| [com.google.code.gson:gson](https://github.com/google/gson) | `2.13.2` | `2.14.0` |\n| [com.google.guava:guava](https://github.com/google/guava) | `33.5.0-jre` | `33.6.0-jre` |\n| [net.dv8tion:JDA](https://github.com/discord-jda/JDA) | `6.4.0` | `6.4.1` |\n| [ru.astrainteractive.klibs:kstorage](https://github.com/makeevrserg/klibs.kstorage) | `4.5.0` | `5.0.4` |\n| [ru.astrainteractive.klibs:mikro-core](https://github.com/makeevrserg/klibs.mikro) | `1.22.0` | `1.23.0` |\n| [ru.astrainteractive.klibs:mikro-extensions-jvm](https://github.com/makeevrserg/klibs.mikro) | `1.22.0` | `1.23.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-protobuf](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [io.ktor:ktor-client-cio](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-client-content-negotiation](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-client-core](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-client-json](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-client-logging](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-serialization-kotlinx-json](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| com.discordsrv:discordsrv | `1.30.4` | `1.30.5` |\n| net.fabricmc:fabric-loader | `0.18.2` | `0.19.2` |\n| [net.kyori:adventure-api](https://github.com/PaperMC/adventure) | `4.26.1` | `5.0.1` |\n| [net.kyori:adventure-text-serializer-gson](https://github.com/PaperMC/adventure) | `4.26.1` | `5.0.1` |\n| [net.kyori:adventure-text-serializer-legacy](https://github.com/PaperMC/adventure) | `4.26.1` | `5.0.1` |\n| [net.kyori:adventure-text-minimessage](https://github.com/PaperMC/adventure) | `4.26.1` | `5.0.1` |\n| [net.kyori:adventure-text-serializer-plain](https://github.com/PaperMC/adventure) | `4.26.1` | `5.0.1` |\n| [com.github.MockBukkit:MockBukkit](https://github.com/MockBukkit/MockBukkit) | `4.101.0` | `4.108.0` |\n| [net.neoforged:bus](https://github.com/NeoForged/Bus) | `8.0.2` | `8.0.5` |\n| [net.neoforged:neoforge](https://github.com/NeoForged/NeoForge) | `21.1.129` | `21.11.42` |\n| [com.github.retrooper:packetevents-spigot](https://github.com/retrooper/packetevents) | `2.11.2` | `2.12.1` |\n| fabric-loom | `1.14.6` | `1.16.1` |\n| net.neoforged.gradle.userdev | `7.1.20` | `7.1.26` |\n\nUpdates `gradle-wrapper` from 9.3.1 to 9.5.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.5.0\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.5.0.\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.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/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.0 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.5.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.5.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.5.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.5.0 RC4\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/3fe117d68f3907790f3809f121aa36303a9151f8\"\u003e\u003ccode\u003e3fe117d\u003c/code\u003e\u003c/a\u003e Update jdks.yaml (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37703\"\u003e#37703\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/33d145af6fbe7cf7c9d84646b6d7f32fea91d5e2\"\u003e\u003ccode\u003e33d145a\u003c/code\u003e\u003c/a\u003e Update jdks.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7a05d1ed48442eb5da4d6e2b6593da55cdec1da\"\u003e\u003ccode\u003ef7a05d1\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37654\"\u003e#37654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/266facdcbcb0b4c60120cc118eaf0f652bfcdfe5\"\u003e\u003ccode\u003e266facd\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0ad6dd8e143455707e444aa7e3d38327a3366513\"\u003e\u003ccode\u003e0ad6dd8\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37646\"\u003e#37646\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/966025d5850d46c9158a2f25e4096222277ecf57\"\u003e\u003ccode\u003e966025d\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e7455734449e422accebf44cf7b31bf93e3a770c\"\u003e\u003ccode\u003ee745573\u003c/code\u003e\u003c/a\u003e Polish IP docs (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37642\"\u003e#37642\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/d5cfd079acd2c8f1182edd6ec23dbab571132d0a\"\u003e\u003ccode\u003ed5cfd07\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37629\"\u003e#37629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/acdf0c36fa13ba09a7ff5b51f79b9af4b1a097ee\"\u003e\u003ccode\u003eacdf0c3\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7d0e4f6f7896426a8b24091388e4c252b62faef\"\u003e\u003ccode\u003ef7d0e4f\u003c/code\u003e\u003c/a\u003e Rename anchor\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.3.1...v9.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.xerial:sqlite-jdbc` from 3.51.3.0 to 3.53.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/xerial/sqlite-jdbc/releases\"\u003eorg.xerial:sqlite-jdbc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.53.0.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejdbc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eexpose wal_autocheckpoint pragma in SQLiteConfig (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/dd2adcc\"\u003edd2adcc\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/xerial/sqlite-jdbc/issues/1397\"\u003e#1397\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003esqlite\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to sqlite 3.53.0 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/baaf087\"\u003ebaaf087\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003epublish multiple classifer jars (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/bdd2b64\"\u003ebdd2b64\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/xerial/sqlite-jdbc/issues/1273\"\u003e#1273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebetter Android support (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/7eb6f3f\"\u003e7eb6f3f\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/xerial/sqlite-jdbc/issues/1378\"\u003e#1378\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump org.sonatype.central:central-publishing-maven-plugin (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/19259e5\"\u003e19259e5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/f572217\"\u003ef572217\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003edeps-dev\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump surefire.version from 3.5.4 to 3.5.5 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/b649d25\"\u003eb649d25\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.assertj:assertj-core from 3.27.6 to 3.27.7 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/857a754\"\u003e857a754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.23.0 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/a597952\"\u003ea597952\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Karl-Michael Edlinger, kju2\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/xerial/sqlite-jdbc/commit/f88e9c7b4d71a443fc9ce80c43e34cd85ceef338\"\u003e\u003ccode\u003ef88e9c7\u003c/code\u003e\u003c/a\u003e chore(release): 3.53.0.0 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/bdd2b64a107ef3aef2168a4446cb2b1c59992ddf\"\u003e\u003ccode\u003ebdd2b64\u003c/code\u003e\u003c/a\u003e feat: publish multiple classifer jars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/7eb6f3fb57c21e2d18a8145e2996caa0cdd398c3\"\u003e\u003ccode\u003e7eb6f3f\u003c/code\u003e\u003c/a\u003e feat: better Android support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/23ead2e027a9868184ab5d363c66652f7d6c64ca\"\u003e\u003ccode\u003e23ead2e\u003c/code\u003e\u003c/a\u003e chore: update native libraries\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/baaf0870311ce780c7d15598fc080f3b31079aea\"\u003e\u003ccode\u003ebaaf087\u003c/code\u003e\u003c/a\u003e feat(sqlite): upgrade to sqlite 3.53.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/dd2adcc879a3b9914f3953629536f3d53473f275\"\u003e\u003ccode\u003edd2adcc\u003c/code\u003e\u003c/a\u003e feat(jdbc): expose wal_autocheckpoint pragma in SQLiteConfig\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/b649d257cbb030969cdbf2cf74d2a05b590ebf86\"\u003e\u003ccode\u003eb649d25\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump surefire.version from 3.5.4 to 3.5.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/857a754356614e2705b1ce1a955b47b0333fedeb\"\u003e\u003ccode\u003e857a754\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump org.assertj:assertj-core from 3.27.6 to 3.27.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/19259e5f34ed5a99515a0ae43711cddde0ef9158\"\u003e\u003ccode\u003e19259e5\u003c/code\u003e\u003c/a\u003e build(deps): bump org.sonatype.central:central-publishing-maven-plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/a5979522b3a4b04020edda625891d2593638316a\"\u003e\u003ccode\u003ea597952\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump org.mockito:mockito-core from 5.21.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/xerial/sqlite-jdbc/compare/3.51.3.0...3.53.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.exposed:exposed-core` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-core's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-dao` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-dao's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-dao's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-java-time` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-java-time's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-java-time's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-jdbc` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-jdbc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-jdbc's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-dao` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-dao's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-dao's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-java-time` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-java-time's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-java-time's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-jdbc` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-jdbc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-jdbc's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.google.code.gson:gson` from 2.13.2 to 2.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/google/gson/releases\"\u003ecom.google.code.gson:gson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eGson 2.14.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type adapters for \u003ccode\u003ejava.time\u003c/code\u003e classes by \u003ca href=\"https://github.com/eamonnmcmanus\"\u003e\u003ccode\u003e@​eamonnmcmanus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2948\"\u003egoogle/gson#2948\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWhen the \u003ccode\u003ejava.time\u003c/code\u003e API is available, Gson automatically can read and write instances of classes like \u003ccode\u003eInstant\u003c/code\u003e and \u003ccode\u003eDuration\u003c/code\u003e. The format it uses essentially freezes the JSON representation that \u003ccode\u003eReflectiveTypeAdapterFactory\u003c/code\u003e established by default, based on the private fields of \u003ccode\u003ejava.time\u003c/code\u003e classes. That's not a great representation, but it is understandable. Changing it to anything else would break compatibility with systems that are expecting the current format.\u003c/p\u003e\n\u003cp\u003eWith this change, Gson no longer tries to access private fields of these classes using reflection. So it is no longer necessary to run with \u003ccode\u003e--add-opens\u003c/code\u003e for these classes on recent JDKs.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove \u003ccode\u003ecom.google.gson.graph\u003c/code\u003e by \u003ca href=\"https://github.com/eamonnmcmanus\"\u003e\u003ccode\u003e@​eamonnmcmanus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2990\"\u003egoogle/gson#2990\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis package was not part of any released artifact and depended on Gson internals in potentially problematic ways.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eValidate that strings being parsed as integers consist of ASCII characters by \u003ca href=\"https://github.com/eamonnmcmanus\"\u003e\u003ccode\u003e@​eamonnmcmanus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2995\"\u003egoogle/gson#2995\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003ePreviously, strings could contain non-ASCII Unicode digits and still be parsed as integers. That's inconsistent with how JSON numbers are treated.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix duplicate key detection when first value is null by \u003ca href=\"https://github.com/andrewstellman\"\u003e\u003ccode\u003e@​andrewstellman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/3006\"\u003egoogle/gson#3006\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis could potentially break code that was relying on the incorrect behaviour. For example, this JSON string was previously accepted but will no longer be: \u003ccode\u003e{\u0026quot;foo\u0026quot;: null, \u0026quot;foo\u0026quot;: bar}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove \u003ccode\u003eSerializable\u003c/code\u003e from internal \u003ccode\u003eType\u003c/code\u003e implementation classes. by \u003ca href=\"https://github.com/eamonnmcmanus\"\u003e\u003ccode\u003e@​eamonnmcmanus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/3011\"\u003egoogle/gson#3011\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe nested classes \u003ccode\u003eParameterizedTypeImpl\u003c/code\u003e, \u003ccode\u003eGenericArrayTypeImpl\u003c/code\u003e, and \u003ccode\u003eWildcardTypeImpl\u003c/code\u003e in \u003ccode\u003eGsonTypes\u003c/code\u003e are implementations of the corresponding types (without \u003ccode\u003eImp...\n\n_Description has been truncated_","html_url":"https://github.com/Astra-Interactive/AstraLibs/pull/131","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Astra-Interactive%2FAstraLibs/issues/131","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/131/packages"},{"uuid":"4362615619","node_id":"PR_kwDOR0sr5c7XVHRl","number":16,"state":"closed","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 11 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-05-08T03:11:37.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-01T03:22:20.000Z","updated_at":"2026-05-08T03:11:38.000Z","time_to_close":604157,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":11,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.2.0","new_version":"12.5.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.44","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.1","new_version":"3.1.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.springframework.boot","old_version":"4.0.5","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.3.0.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 11 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.2.0` | `12.5.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.44` | `1.18.46` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.1` | `3.1.2` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.5` | `4.0.6` |\n| org.hibernate.orm | `7.3.0.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.0` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.2.0 to 12.5.0\n\nUpdates `org.projectlombok:lombok` from 1.18.44 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.44...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tools.jackson:jackson-bom` from 3.1.1 to 3.1.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.1...jackson-bom-3.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.5 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.5...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.3.0.Final to 7.3.2.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.5.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.5.0\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.5.0.\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.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/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.0 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.5.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.5.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.5.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.5.0 RC4\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/3fe117d68f3907790f3809f121aa36303a9151f8\"\u003e\u003ccode\u003e3fe117d\u003c/code\u003e\u003c/a\u003e Update jdks.yaml (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37703\"\u003e#37703\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/33d145af6fbe7cf7c9d84646b6d7f32fea91d5e2\"\u003e\u003ccode\u003e33d145a\u003c/code\u003e\u003c/a\u003e Update jdks.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7a05d1ed48442eb5da4d6e2b6593da55cdec1da\"\u003e\u003ccode\u003ef7a05d1\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37654\"\u003e#37654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/266facdcbcb0b4c60120cc118eaf0f652bfcdfe5\"\u003e\u003ccode\u003e266facd\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0ad6dd8e143455707e444aa7e3d38327a3366513\"\u003e\u003ccode\u003e0ad6dd8\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37646\"\u003e#37646\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/966025d5850d46c9158a2f25e4096222277ecf57\"\u003e\u003ccode\u003e966025d\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e7455734449e422accebf44cf7b31bf93e3a770c\"\u003e\u003ccode\u003ee745573\u003c/code\u003e\u003c/a\u003e Polish IP docs (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37642\"\u003e#37642\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/d5cfd079acd2c8f1182edd6ec23dbab571132d0a\"\u003e\u003ccode\u003ed5cfd07\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37629\"\u003e#37629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/acdf0c36fa13ba09a7ff5b51f79b9af4b1a097ee\"\u003e\u003ccode\u003eacdf0c3\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7d0e4f6f7896426a8b24091388e4c252b62faef\"\u003e\u003ccode\u003ef7d0e4f\u003c/code\u003e\u003c/a\u003e Rename anchor\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/willianpaixao/booklore/pull/16","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/willianpaixao%2Fbooklore/issues/16","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/16/packages"},{"uuid":"4320244201","node_id":"PR_kwDORprh4c7VMZt8","number":27,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 12 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-24T03:10:28.000Z","updated_at":"2026-04-24T03:15:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":12,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.1.1","new_version":"12.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.44","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"com.github.RouHim:jaudiotagger","old_version":"2.0.18","new_version":"2.0.19"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.3.0.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.4.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 12 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.1.1` | `12.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.44` | `1.18.46` |\n| com.github.RouHim:jaudiotagger | `2.0.18` | `2.0.19` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.2` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.3.0.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.4.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.1.1 to 12.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.44 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.44...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.RouHim:jaudiotagger` from 2.0.18 to 2.0.19\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2d305e6af8b61c6c30f5658cd8c794419e233a53\"\u003e\u003ccode\u003e2d305e6\u003c/code\u003e\u003c/a\u003e Add JDK 25 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/da85336a6e5749354bc65536f493a712401eea4f\"\u003e\u003ccode\u003eda85336\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/123\"\u003e#123\u003c/a\u003e from FasterXML/tatu/3.1/122-switch-to-junit6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7ec5e0ec5ad5e53e12e775537e4717478841d459\"\u003e\u003ccode\u003e7ec5e0e\u003c/code\u003e\u003c/a\u003e Fix \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/122\"\u003e#122\u003c/a\u003e: switch 3.x (starting with 3.1.1) to use JUnit 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ef0977031036f6fcc6d54eaeb93ccd35a2ab2c96\"\u003e\u003ccode\u003eef09770\u003c/code\u003e\u003c/a\u003e Update oss-parent dep\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.3.0.Final to 7.3.2.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 to 9.4.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.4.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.4.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJava 26 support\u003c/li\u003e\n\u003cli\u003eNon-class-based JVM tests\u003c/li\u003e\n\u003cli\u003eEnhanced console progress bar\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.4.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/akankshaa-00\"\u003eakankshaa-00\u003c/a\u003e,\n\u003ca href=\"https://github.com/kelemen\"\u003eAttila Kelemen\u003c/a\u003e,\n\u003ca href=\"https://github.com/Vampire\"\u003eBjörn Kautler\u003c/a\u003e,\n\u003ca href=\"https://github.com/dblood\"\u003edblood\u003c/a\u003e,\n\u003ca href=\"https://github.com/drieks\"\u003eDennis Rieks\u003c/a\u003e,\n\u003ca href=\"https://github.com/duvvuvenkataramana\"\u003eduvvuvenkataramana\u003c/a\u003e,\n\u003ca href=\"https://github.com/wakingrufus\"\u003eJohn Burns\u003c/a\u003e,\n\u003ca href=\"https://github.com/Julianw03\"\u003eJulian\u003c/a\u003e,\n\u003ca href=\"https://github.com/kevinstembridge\"\u003ekevinstembridge\u003c/a\u003e,\n\u003ca href=\"https://github.com/NielsDoucet\"\u003eNiels Doucet\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/rhernandez35\"\u003eRichard Hernandez\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/slovdahl\"\u003eSebastian Lövdahl\u003c/a\u003e,\n\u003ca href=\"https://github.com/stephan2405\"\u003estephan2405\u003c/a\u003e,\n\u003ca href=\"https://github.com/slandelle\"\u003eStephane Landelle\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,\n\u003ca href=\"https://github.com/Pankraz76\"\u003eVincent Potuček\u003c/a\u003e,\n\u003ca href=\"https://github.com/vlsi\"\u003eVladimir Sitnikov\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.4.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.4.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.4.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.4.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\u003c/blockquote\u003e\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/2d6327017519d23b96af35865dc997fcb544fb40\"\u003e\u003ccode\u003e2d63270\u003c/code\u003e\u003c/a\u003e Ignore test (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37180\"\u003e#37180\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/4c15906d6a20acc61f2f7b9272c8cb7a6f708239\"\u003e\u003ccode\u003e4c15906\u003c/code\u003e\u003c/a\u003e Ignore test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9759ac1dec4b3742012397b5f0127a777947b73f\"\u003e\u003ccode\u003e9759ac1\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37178\"\u003e#37178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/aaf6ed46ed8d4c3b9b7a7a751cda5893668b2a42\"\u003e\u003ccode\u003eaaf6ed4\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/47cb78328a6ddc6c1509003ab3264017ed5d9a0a\"\u003e\u003ccode\u003e47cb783\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 progress bar not cleared on SIGINT (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37038\"\u003e#37038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/ef03f1d41b0a65f6aae0931d4746f7359647a7e4\"\u003e\u003ccode\u003eef03f1d\u003c/code\u003e\u003c/a\u003e Fix order-dependent assertion in CrossBuildScriptCachingIntegrationSpec\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/fd26fd36d693337dbf033143a9ac0e71f78a4209\"\u003e\u003ccode\u003efd26fd3\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 taskbar progress bar not cleared on build end or SIGINT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0a84d6751921709fbc7d552a50d9e3b34eb1930d\"\u003e\u003ccode\u003e0a84d67\u003c/code\u003e\u003c/a\u003e Release notes for 9.4.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37148\"\u003e#37148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e569c31320ae6c7be490def60d36de17881f9957\"\u003e\u003ccode\u003ee569c31\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9f227defc2e02a991f05fba50f7de2fbe13b7c5b\"\u003e\u003ccode\u003e9f227de\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.0...v9.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/Owemeone/grimmory/pull/27","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Owemeone%2Fgrimmory/issues/27","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/27/packages"},{"uuid":"4320244125","node_id":"PR_kwDORvJjTc7VMZtC","number":23,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 16 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-24T03:10:26.000Z","updated_at":"2026-04-24T03:15:15.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":16,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.0.3","new_version":"12.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"com.github.RouHim:jaudiotagger","old_version":"2.0.16","new_version":"2.0.19"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.6","new_version":"4.0.7"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.6.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.4.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 14 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.0.3` | `12.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| com.github.RouHim:jaudiotagger | `2.0.16` | `2.0.19` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.6` | `4.0.7` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.2` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.2.6.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.4.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.0.3 to 12.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `com.github.RouHim:jaudiotagger` from 2.0.16 to 2.0.19\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.6 to 4.0.7\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2d305e6af8b61c6c30f5658cd8c794419e233a53\"\u003e\u003ccode\u003e2d305e6\u003c/code\u003e\u003c/a\u003e Add JDK 25 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/da85336a6e5749354bc65536f493a712401eea4f\"\u003e\u003ccode\u003eda85336\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/123\"\u003e#123\u003c/a\u003e from FasterXML/tatu/3.1/122-switch-to-junit6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7ec5e0ec5ad5e53e12e775537e4717478841d459\"\u003e\u003ccode\u003e7ec5e0e\u003c/code\u003e\u003c/a\u003e Fix \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/122\"\u003e#122\u003c/a\u003e: switch 3.x (starting with 3.1.1) to use JUnit 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ef0977031036f6fcc6d54eaeb93ccd35a2ab2c96\"\u003e\u003ccode\u003eef09770\u003c/code\u003e\u003c/a\u003e Update oss-parent dep\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.2.6.Final to 7.3.2.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 to 9.4.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.4.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.4.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJava 26 support\u003c/li\u003e\n\u003cli\u003eNon-class-based JVM tests\u003c/li\u003e\n\u003cli\u003eEnhanced console progress bar\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.4.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/akankshaa-00\"\u003eakankshaa-00\u003c/a\u003e,\n\u003ca href=\"https://github.com/kelemen\"\u003eAttila Kelemen\u003c/a\u003e,\n\u003ca href=\"https://github.com/Vampire\"\u003eBjörn Kautler\u003c/a\u003e,\n\u003ca href=\"https://github.com/dblood\"\u003edblood\u003c/a\u003e,\n\u003ca href=\"https://github.com/drieks\"\u003eDennis Rieks\u003c/a\u003e,\n\u003ca href=\"https://github.com/duvvuvenkataramana\"\u003eduvvuvenkataramana\u003c/a\u003e,\n\u003ca href=\"https://github.com/wakingrufus\"\u003eJohn Burns\u003c/a\u003e,\n\u003ca href=\"https://github.com/Julianw03\"\u003eJulian\u003c/a\u003e,\n\u003ca href=\"https://github.com/kevinstembridge\"\u003ekevinstembridge\u003c/a\u003e,\n\u003ca href=\"https://github.com/NielsDoucet\"\u003eNiels Doucet\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/rhernandez35\"\u003eRichard Hernandez\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/slovdahl\"\u003eSebastian Lövdahl\u003c/a\u003e,\n\u003ca href=\"https://github.com/stephan2405\"\u003estephan2405\u003c/a\u003e,\n\u003ca href=\"https://github.com/slandelle\"\u003eStephane Landelle\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,\n\u003ca href=\"https://github.com/Pankraz76\"\u003eVincent Potuček\u003c/a\u003e,\n\u003ca href=\"https://github.com/vlsi\"\u003eVladimir Sitnikov\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.4.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.4.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.4.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.4.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\u003c/blockquote\u003e\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/2d6327017519d23b96af35865dc997fcb544fb40\"\u003e\u003ccode\u003e2d63270\u003c/code\u003e\u003c/a\u003e Ignore test (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37180\"\u003e#37180\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/4c15906d6a20acc61f2f7b9272c8cb7a6f708239\"\u003e\u003ccode\u003e4c15906\u003c/code\u003e\u003c/a\u003e Ignore test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9759ac1dec4b3742012397b5f0127a777947b73f\"\u003e\u003ccode\u003e9759ac1\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37178\"\u003e#37178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/aaf6ed46ed8d4c3b9b7a7a751cda5893668b2a42\"\u003e\u003ccode\u003eaaf6ed4\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/47cb78328a6ddc6c1509003ab3264017ed5d9a0a\"\u003e\u003ccode\u003e47cb783\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 progress bar not cleared on SIGINT (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37038\"\u003e#37038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/ef03f1d41b0a65f6aae0931d4746f7359647a7e4\"\u003e\u003ccode\u003eef03f1d\u003c/code\u003e\u003c/a\u003e Fix order-dependent assertion in CrossBuildScriptCachingIntegrationSpec\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/fd26fd36d693337dbf033143a9ac0e71f78a4209\"\u003e\u003ccode\u003efd26fd3\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 taskbar progress bar not cleared on build end or SIGINT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0a84d6751921709fbc7d552a50d9e3b34eb1930d\"\u003e\u003ccode\u003e0a84d67\u003c/code\u003e\u003c/a\u003e Release notes for 9.4.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37148\"\u003e#37148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e569c31320ae6c7be490def60d36de17881f9957\"\u003e\u003ccode\u003ee569c31\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9f227defc2e02a991f05fba50f7de2fbe13b7c5b\"\u003e\u003ccode\u003e9f227de\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.0...v9.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cdome/ollumi/pull/23","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdome%2Follumi/issues/23","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/23/packages"},{"uuid":"4320242955","node_id":"PR_kwDORpKt9s7VMZd6","number":14,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 15 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-24T03:10:02.000Z","updated_at":"2026-05-08T05:01:03.831Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":15,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.0.3","new_version":"12.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.6","new_version":"4.0.7"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.6.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.4.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 13 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.0.3` | `12.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.6` | `4.0.7` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.2` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.2.6.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.4.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.0.3 to 12.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.6 to 4.0.7\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2d305e6af8b61c6c30f5658cd8c794419e233a53\"\u003e\u003ccode\u003e2d305e6\u003c/code\u003e\u003c/a\u003e Add JDK 25 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/da85336a6e5749354bc65536f493a712401eea4f\"\u003e\u003ccode\u003eda85336\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/123\"\u003e#123\u003c/a\u003e from FasterXML/tatu/3.1/122-switch-to-junit6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7ec5e0ec5ad5e53e12e775537e4717478841d459\"\u003e\u003ccode\u003e7ec5e0e\u003c/code\u003e\u003c/a\u003e Fix \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/122\"\u003e#122\u003c/a\u003e: switch 3.x (starting with 3.1.1) to use JUnit 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ef0977031036f6fcc6d54eaeb93ccd35a2ab2c96\"\u003e\u003ccode\u003eef09770\u003c/code\u003e\u003c/a\u003e Update oss-parent dep\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.2.6.Final to 7.3.2.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 to 9.4.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.4.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.4.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJava 26 support\u003c/li\u003e\n\u003cli\u003eNon-class-based JVM tests\u003c/li\u003e\n\u003cli\u003eEnhanced console progress bar\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.4.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/akankshaa-00\"\u003eakankshaa-00\u003c/a\u003e,\n\u003ca href=\"https://github.com/kelemen\"\u003eAttila Kelemen\u003c/a\u003e,\n\u003ca href=\"https://github.com/Vampire\"\u003eBjörn Kautler\u003c/a\u003e,\n\u003ca href=\"https://github.com/dblood\"\u003edblood\u003c/a\u003e,\n\u003ca href=\"https://github.com/drieks\"\u003eDennis Rieks\u003c/a\u003e,\n\u003ca href=\"https://github.com/duvvuvenkataramana\"\u003eduvvuvenkataramana\u003c/a\u003e,\n\u003ca href=\"https://github.com/wakingrufus\"\u003eJohn Burns\u003c/a\u003e,\n\u003ca href=\"https://github.com/Julianw03\"\u003eJulian\u003c/a\u003e,\n\u003ca href=\"https://github.com/kevinstembridge\"\u003ekevinstembridge\u003c/a\u003e,\n\u003ca href=\"https://github.com/NielsDoucet\"\u003eNiels Doucet\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/rhernandez35\"\u003eRichard Hernandez\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/slovdahl\"\u003eSebastian Lövdahl\u003c/a\u003e,\n\u003ca href=\"https://github.com/stephan2405\"\u003estephan2405\u003c/a\u003e,\n\u003ca href=\"https://github.com/slandelle\"\u003eStephane Landelle\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,\n\u003ca href=\"https://github.com/Pankraz76\"\u003eVincent Potuček\u003c/a\u003e,\n\u003ca href=\"https://github.com/vlsi\"\u003eVladimir Sitnikov\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.4.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.4.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.4.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.4.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\u003c/blockquote\u003e\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/2d6327017519d23b96af35865dc997fcb544fb40\"\u003e\u003ccode\u003e2d63270\u003c/code\u003e\u003c/a\u003e Ignore test (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37180\"\u003e#37180\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/4c15906d6a20acc61f2f7b9272c8cb7a6f708239\"\u003e\u003ccode\u003e4c15906\u003c/code\u003e\u003c/a\u003e Ignore test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9759ac1dec4b3742012397b5f0127a777947b73f\"\u003e\u003ccode\u003e9759ac1\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37178\"\u003e#37178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/aaf6ed46ed8d4c3b9b7a7a751cda5893668b2a42\"\u003e\u003ccode\u003eaaf6ed4\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/47cb78328a6ddc6c1509003ab3264017ed5d9a0a\"\u003e\u003ccode\u003e47cb783\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 progress bar not cleared on SIGINT (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37038\"\u003e#37038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/ef03f1d41b0a65f6aae0931d4746f7359647a7e4\"\u003e\u003ccode\u003eef03f1d\u003c/code\u003e\u003c/a\u003e Fix order-dependent assertion in CrossBuildScriptCachingIntegrationSpec\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/fd26fd36d693337dbf033143a9ac0e71f78a4209\"\u003e\u003ccode\u003efd26fd3\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 taskbar progress bar not cleared on build end or SIGINT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0a84d6751921709fbc7d552a50d9e3b34eb1930d\"\u003e\u003ccode\u003e0a84d67\u003c/code\u003e\u003c/a\u003e Release notes for 9.4.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37148\"\u003e#37148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e569c31320ae6c7be490def60d36de17881f9957\"\u003e\u003ccode\u003ee569c31\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9f227defc2e02a991f05fba50f7de2fbe13b7c5b\"\u003e\u003ccode\u003e9f227de\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.0...v9.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/erblore/erblore/pull/14","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/erblore%2Ferblore/issues/14","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/14/packages"},{"uuid":"4320242349","node_id":"PR_kwDOR0sr5c7VMZWB","number":14,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 10 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-24T03:09:48.000Z","updated_at":"2026-04-24T03:13:26.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":10,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.2.0","new_version":"12.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.44","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.1","new_version":"3.1.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.springframework.boot","old_version":"4.0.5","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.3.0.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 10 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.2.0` | `12.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.44` | `1.18.46` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.1` | `3.1.2` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.5` | `4.0.6` |\n| org.hibernate.orm | `7.3.0.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.2.0 to 12.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.44 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.44...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tools.jackson:jackson-bom` from 3.1.1 to 3.1.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.1...jackson-bom-3.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.5 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.5...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.3.0.Final to 7.3.2.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/willianpaixao/booklore/pull/14","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/willianpaixao%2Fbooklore/issues/14","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/14/packages"},{"uuid":"4320240453","node_id":"PR_kwDORJ5GTM7VMY-A","number":18,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 22 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-24T03:09:08.000Z","updated_at":"2026-04-24T03:10:32.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":22,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.6","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"11.19.0","new_version":"12.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"com.twelvemonkeys.imageio:imageio-jpeg","old_version":"3.13.0","new_version":"3.13.1"},{"name":"io.documentnode:epub4j-core","old_version":"4.2.2","new_version":"4.2.3","repository_url":"https://github.com/documentnode/epub4j"},{"name":"com.github.junrar:junrar","old_version":"7.5.7","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"com.fasterxml.jackson.datatype:jackson-datatype-jsr310","old_version":"2.20.1","new_version":"2.21.2"},{"name":"org.jsoup:jsoup","old_version":"1.21.2","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"2.8.14","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.tukaani:xz","old_version":"1.11","new_version":"1.12","repository_url":"https://github.com/tukaani-project/xz-java"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.0","new_version":"3.2.3","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.assertj:assertj-core","old_version":"3.27.6","new_version":"3.27.7","repository_url":"https://github.com/assertj/assertj"},{"name":"org.springframework.boot","old_version":"3.5.8","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"6.6.36.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"8.14.3","new_version":"9.4.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 17 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.6` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `11.19.0` | `12.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| com.twelvemonkeys.imageio:imageio-jpeg | `3.13.0` | `3.13.1` |\n| [io.documentnode:epub4j-core](https://github.com/documentnode/epub4j) | `4.2.2` | `4.2.3` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.7` | `7.5.10` |\n| com.fasterxml.jackson.datatype:jackson-datatype-jsr310 | `2.20.1` | `2.21.2` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.21.2` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `2.8.14` | `3.0.3` |\n| [org.tukaani:xz](https://github.com/tukaani-project/xz-java) | `1.11` | `1.12` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.0` | `3.2.3` |\n| [org.assertj:assertj-core](https://github.com/assertj/assertj) | `3.27.6` | `3.27.7` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `3.5.8` | `4.0.6` |\n| org.hibernate.orm | `6.6.36.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `8.14.3` | `9.4.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.6 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.7\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.7\"\u003e3.5.7\u003c/a\u003e (Dec 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.6...3.5.7\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1282 - Added TLS SNI (Server Name Indication) support\u003c/li\u003e\n\u003cli\u003eCONJ-1271 - Added MariaDbDataTruncation exception that includes MariaDB error code and error message\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1291 - Fixed ConnectionPoolDataSource incompatibility and connection leaks due to internal ConnectionEventListener in MariaDB Connector/J 3.5.x\u003c/li\u003e\n\u003cli\u003eCONJ-1286 - Fixed MariaDbPoolPinnedConnection thread-safety issue\u003c/li\u003e\n\u003cli\u003eCONJ-1283 - Fixed rewriteBatchedStatements introduced in 3.5.6 bug when having parentesis after VALUES parts\u003c/li\u003e\n\u003cli\u003eCONJ-1287 - Fixed authentication plugin multi-exchange prefix (0x01) handling introduced in MDEV-37554\u003c/li\u003e\n\u003cli\u003eCONJ-1290 - Fixed NullPointerException in MultiPrimaryReplicaClient\u003c/li\u003e\n\u003cli\u003eCONJ-1295 - Fixed MariaDbClob compilation with JDK 26+\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.7\"\u003e3.5.7\u003c/a\u003e (Dec 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.6...3.5.7\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1282 - Added TLS SNI (Server Name Indication) support\u003c/li\u003e\n\u003cli\u003eCONJ-1271 - Added MariaDbDataTruncation exception that includes MariaDB error code and error message\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1291 - Fixed ConnectionPoolDataSource incompatibility and connection leaks due to internal ConnectionEventListener in MariaDB Connector/J 3.5.x\u003c/li\u003e\n\u003cli\u003eCONJ-1286 - Fixed MariaDbPoolPinnedConnection thread-safety issue\u003c/li\u003e\n\u003cli\u003eCONJ-1283 - Fixed rewriteBatchedStatements introduced in 3.5.6 bug when having parentesis after VALUES parts\u003c/li\u003e\n\u003cli\u003eCONJ-1287 - Fixed authentication plugin multi-exchange prefix (0x01) handling introduced in MDEV-37554\u003c/li\u003e\n\u003cli\u003eCONJ-1290 - Fixed NullPointerException in MultiPrimaryReplicaClient\u003c/li\u003e\n\u003cli\u003eCONJ-1295 - Fixed MariaDbClob compilation with JDK 26+\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.6...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 11.19.0 to 12.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `com.twelvemonkeys.imageio:imageio-jpeg` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-tiff` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-webp` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-bmp` from 3.13.0 to 3.13.1\n\nUpdates `io.documentnode:epub4j-core` from 4.2.2 to 4.2.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/documentnode/epub4j/commit/4bf55082feba0496f98b867ec03ebec5f393b649\"\u003e\u003ccode\u003e4bf5508\u003c/code\u003e\u003c/a\u003e Migrate Maven Central publishing to new Central Portal API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/documentnode/epub4j/commit/b153885ef8aefbe4063a40894c048a5cc2b5a354\"\u003e\u003ccode\u003eb153885\u003c/code\u003e\u003c/a\u003e Load sdkman environment before running gradle commands\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/documentnode/epub4j/compare/v4.2.2...v4.2.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.junrar:junrar` from 7.5.7 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.8\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.7...v7.5.8\"\u003e7.5.8\u003c/a\u003e (2026-02-26)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handle files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/947ff1d\"\u003e947ff1d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump jreleaser to 1.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/a489f58\"\u003ea489f58\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 8.14 to 9.3.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/a319fc7\"\u003ea319fc7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/c7041fc\"\u003ec7041fc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/618feeb\"\u003e618feeb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.24 to 1.5.26 (\u003ca href=\"https://github.com/junrar/junrar/commits/55399ea\"\u003e55399ea\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.assertj:assertj-core from 3.27.6 to 3.27.7 (\u003ca href=\"https://github.com/junrar/junrar/commits/de33003\"\u003ede33003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.23 to 1.5.24 (\u003ca href=\"https://github.com/junrar/junrar/commits/a4ba2c1\"\u003ea4ba2c1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.22 to 1.5.23 (\u003ca href=\"https://github.com/junrar/junrar/commits/75864b6\"\u003e75864b6\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.7...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson.datatype:jackson-datatype-jsr310` from 2.20.1 to 2.21.2\n\nUpdates `org.jsoup:jsoup` from 1.21.2 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\u003c/p\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.1\u003c/strong\u003e is out now, adding support for the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors, a configurable maximum parser depth, and numerous bug fixes and improvements.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://jsoup.org/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for using the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors (e.g. \u003ccode\u003e[attr~=regex]\u003c/code\u003e, \u003ccode\u003e:matches(regex)\u003c/code\u003e), which ensures linear-time performance for regex evaluation. This allows safer handling of arbitrary user-supplied query regexes. To enable, add the \u003ccode\u003ecom.google.re2j\u003c/code\u003e dependency to your classpath, e.g.:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e  \u0026lt;dependency\u0026gt;\r\n    \u0026lt;groupId\u0026gt;com.google.re2j\u0026lt;/groupId\u0026gt;\r\n    \u0026lt;artifactId\u0026gt;re2j\u0026lt;/artifactId\u0026gt;\r\n    \u0026lt;version\u0026gt;1.8\u0026lt;/version\u0026gt;\r\n  \u0026lt;/dependency\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e(If you already have that dependency in your classpath, but you want to keep using the Java regex engine, you can disable re2j via \u003ccode\u003eSystem.setProperty(\u0026quot;jsoup.useRe2j\u0026quot;, \u0026quot;false\u0026quot;)\u003c/code\u003e.) You can confirm that the re2j engine has been enabled correctly by calling \u003ccode\u003eRegex.usingRe2j()\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2407\"\u003e#2407\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.22.1 (2026-Jan-01)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for using the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors (e.g. \u003ccode\u003e[attr~=regex]\u003c/code\u003e, \u003ccode\u003e:matches(regex)\u003c/code\u003e), which ensures linear-time performance for regex evaluation. This allows safer handling of arbitrary user-supplied query regexes. To enable, add the \u003ccode\u003ecom.google.re2j\u003c/code\u003e dependency to your classpath, e.g.:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e  \u0026lt;dependency\u0026gt;\n    \u0026lt;groupId\u0026gt;com.google.re2j\u0026lt;/groupId\u0026gt;\n    \u0026lt;artifactId\u0026gt;re2j\u0026lt;/artifactId\u0026gt;\n    \u0026lt;version\u0026gt;1.8\u0026lt;/version\u0026gt;\n  \u0026lt;/dependency\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e(If you already have that dependency in your classpath, but you want to keep using the Java regex engine, you can disable re2j via \u003ccode\u003eSystem.setProperty(\u0026quot;jsoup.useRe2j\u0026quot;, \u0026quot;false\u0026quot;)\u003c/code\u003e.) You can confirm that the re2j engine has been enabled correctly by calling \u003ccode\u003eorg.jsoup.helper.Regex.usingRe2j()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2407\"\u003e#2407\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded an instance method \u003ccode\u003eParser#unescape(String, boolean)\u003c/code\u003e that unescapes HTML entities using the parser's configuration (e.g. to support error tracking), complementing the existing static utility \u003ccode\u003eParser.unescapeEntities(String, boolean)\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2396\"\u003e#2396\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded a configurable maximum parser depth (to limit the number of open elements on stack) to both HTML and XML parsers. The HTML parser now defaults to a depth of 512 to match browser behavior, and protect against unbounded stack growth, while the XML parser keeps unlimited depth by default, but can opt into a limit via \u003ccode\u003eorg.jsoup.parser.Parser#setMaxDepth\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2421\"\u003e#2421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild: added CI coverage for JDK 25 \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2403\"\u003e#2403\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild: added a CI fuzzer for contextual fragment parsing (in addition to existing full body HTML and XML fuzzers). [oss-fuzz \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/14041\"\u003e#14041\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/google/oss-fuzz/pull/14041\"\u003egoogle/oss-fuzz#14041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSet a removal schedule of jsoup 1.24.1 for previously deprecated APIs.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePreviously cached child \u003ccode\u003eElements\u003c/code\u003e of an \u003ccode\u003eElement\u003c/code\u003e were not correctly invalidated in \u003ccode\u003eNode#replaceWith(Node)\u003c/code\u003e, which could lead to incorrect results when subsequently calling \u003ccode\u003eElement#children()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2391\"\u003e#2391\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAttribute selector values are now compared literally without trimming. Previously, jsoup trimmed whitespace from selector values and from element attribute values, which could cause mismatches with browser behavior (e.g. \u003ccode\u003e[attr=\u0026quot; foo \u0026quot;]\u003c/code\u003e). Now matches align with the CSS specification and browser engines. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2380\"\u003e#2380\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen using the JDK HttpClient, any system default proxy (\u003ccode\u003eProxySelector.getDefault()\u003c/code\u003e) was ignored. Now, the system proxy is used if a per-request proxy is not set. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2388\"\u003e#2388\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2390\"\u003e#2390\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eA \u003ccode\u003eValidationException\u003c/code\u003e could be thrown in the adoption agency algorithm with particularly broken input. Now logged as a parse error. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2393\"\u003e#2393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNull characters in the HTML body were not consistently removed; and in foreign content were not correctly replaced. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2395\"\u003e#2395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAn \u003ccode\u003eIndexOutOfBoundsException\u003c/code\u003e could be thrown when parsing a body fragment with crafted input. Now logged as a parse error. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2397\"\u003e#2397\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2406\"\u003e#2406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen using StructuralEvaluators (e.g., a \u003ccode\u003eparent child\u003c/code\u003e selector) across many retained threads, their memoized results could also be retained, increasing memory use. These results are now cleared immediately after use, reducing overall memory consumption. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2411\"\u003e#2411\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCloning a \u003ccode\u003eParser\u003c/code\u003e now preserves any custom \u003ccode\u003eTagSet\u003c/code\u003e applied to the parser. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2422\"\u003e#2422\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2423\"\u003e#2423\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.21.2...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 2.8.14 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003espringdoc-openapi v3.0.2 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3229\"\u003e#3229\u003c/a\u003e – Add support for Spring Framework API Versioning with Functional Endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3208\"\u003e#3208\u003c/a\u003e – Add \u003ccode\u003espringdoc.swagger-ui.document-title\u003c/code\u003e property\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.3\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.43\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Scalar to version \u003cstrong\u003e0.5.55\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3232\"\u003e#3232\u003c/a\u003e – Gracefully handle springdoc endpoint paths during API version resolution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3230\"\u003e#3230\u003c/a\u003e – Scalar source URLs resolve to \u003ccode\u003enull/\u0026lt;groupName\u0026gt;\u003c/code\u003e on second request when using \u003ccode\u003eGroupedOpenApi\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3228\"\u003e#3228\u003c/a\u003e – springdoc-openapi-starter 3.x doesn't depend on \u003ccode\u003eorg.springframework.boot:spring-boot-starter\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.0.2] - 2026-02-27\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3229\"\u003e#3229\u003c/a\u003e – Add support for Spring Framework API Versioning with Functional Endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3208\"\u003e#3208\u003c/a\u003e – Add \u003ccode\u003espringdoc.swagger-ui.document-title\u003c/code\u003e property\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.3\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.43\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Scalar to version \u003cstrong\u003e0.5.55\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3232\"\u003e#3232\u003c/a\u003e – Gracefully handle springdoc endpoint paths during API version resolution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3230\"\u003e#3230\u003c/a\u003e – Scalar source URLs resolve to \u003ccode\u003enull/\u0026lt;groupName\u0026gt;\u003c/code\u003e on second request when using \u003ccode\u003eGroupedOpenApi\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3228\"\u003e#3228\u003c/a\u003e – springdoc-openapi-starter 3.x doesn't depend on \u003ccode\u003eorg.springframework.boot:spring-boot-starter\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3220\"\u003e#3220\u003c/a\u003e – Reachability metadata not compatible with GraalVM 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3195\"\u003e#3195\u003c/a\u003e – Application won't compile when OpenApi and spring-boot-data-rest is present\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3193\"\u003e#3193\u003c/a\u003e – \u003ccode\u003eOpenApi\u003c/code\u003e field in \u003ccode\u003eSpringDocConfigProperties\u003c/code\u003e does not comply with camel case naming conventions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v2.8.14...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.tukaani:xz` from 1.11 to 1.12\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tukaani-project/xz-java/blob/master/NEWS.md\"\u003eorg.tukaani:xz's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.12 (2026-03-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix ArrayIndexOutOfBoundsException in the LZMA/LZMA2 encoder on\nx86-64 and ARM64 when running on Java 9 or newer. The affected\ncode isn't used on Java 8. The bug is present in versions 1.10\nand 1.11. If one cannot upgrade, one should set the property\n\u003ccode\u003eorg.tukaani.xz.MatchLengthFinder=Basic\u003c/code\u003e to disable the affected\ncode path.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix ArrayCache usage in LZMAInputStream. If ArrayCache was enabled,\ndecompression was likely to fail quickly when the cache returns a\ncached array. ArrayCache is disabled by default.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe binaries of 1.12 in the Maven Central require Java 8 and\ncontain optimized classes for Java \u0026gt;= 9 as multi-release JAR.\nThey were built with OpenJDK 21.0.10 on GNU/Linux and can be\nreproduced using the following command:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSOURCE_DATE_EPOCH=1772370000 TZ=UTC0 ant maven\n\u003c/code\u003e\u003c/pre\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/tukaani-project/xz-java/commit/107a519fac1e6789101ad9c234afe3dc407be7f5\"\u003e\u003ccode\u003e107a519\u003c/code\u003e\u003c/a\u003e Bump the version number to 1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/3061152e66a8ea2cc6366fd5da21409b8a3d4788\"\u003e\u003ccode\u003e3061152\u003c/code\u003e\u003c/a\u003e Update NEWS.md for 1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/0ecee25c1590dae305135317cf6e768f49093af7\"\u003e\u003ccode\u003e0ecee25\u003c/code\u003e\u003c/a\u003e Refactor EXTRA_SIZE to getExtraSize()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/ac1aeb197dd8589dc6892f13f5ef68801383ec34\"\u003e\u003ccode\u003eac1aeb1\u003c/code\u003e\u003c/a\u003e Fix ArrayIndexOutOfBoundsException in the LZMA/LZMA2 encoder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/12c75fd1d06ef7db89335d3da1ca5bb91ab6ac0b\"\u003e\u003ccode\u003e12c75fd\u003c/code\u003e\u003c/a\u003e Fix ArrayCache usage with LZMAInputStream\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/e52d9ad621afcaa422668484bad91ce7ba0506ef\"\u003e\u003ccode\u003ee52d9ad\u003c/code\u003e\u003c/a\u003e SHA256SUMS: Add 1.11 files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/9a755ec5335de00ce365b365b72e4683e591171f\"\u003e\u003ccode\u003e9a755ec\u003c/code\u003e\u003c/a\u003e CI: Add missing SPDX tags\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tukaani-project/xz-java/compare/v1.11...v1.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.ben-manes.caffeine:caffeine` from 3.2.0 to 3.2.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ben-manes/caffeine/releases\"\u003ecom.github.ben-manes.caffeine:caffeine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed frequency tracking of weak keys to use the object's identity hash code (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1902\"\u003e#1902\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for underscores in \u003ccode\u003eCaffeineSpec\u003c/code\u003e when using numeric literals (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1890\"\u003e#1890\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the external api to no longer lock when querying for the maximum size or weighted size (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1897\"\u003e#1897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded detection and recovery when a custom \u003ccode\u003eCompletableFuture\u003c/code\u003e is in an inconsistent state (\u003ca href=\"https://redirect.github.com/quarkusio/quarkus/issues/50513\"\u003equarkus#50513\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.2.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed characteristics returned by Spliterators (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1883\"\u003e#1883\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.2.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e for an async cache's synchronous view to retry if incomplete\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eCaffeineSpec\u003c/code\u003e when being reflectively constructed (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1839\"\u003e#1839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the handling of negative durations with variable expiration\u003c/li\u003e\n\u003cli\u003eFixed intermittent null after replacing a weak/soft value (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1820\"\u003e#1820\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/ben-manes/caffeine/commit/5227a98b51e02b4d4fbfc2b0e33c362a138f51b1\"\u003e\u003ccode\u003e5227a98\u003c/code\u003e\u003c/a\u003e minor build touchups\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/cc3f37d50776f246bfb3ddbe907d2c1a675ce901\"\u003e\u003ccode\u003ecc3f37d\u003c/code\u003e\u003c/a\u003e reorganize into separate gradle test suites\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/2299add522332c06b7bbebb0b5ef322ea23f5254\"\u003e\u003ccode\u003e2299add\u003c/code\u003e\u003c/a\u003e Allow users to read the maximum size without locking (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1897\"\u003e#1897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/6250b384f161d1841e2bfd032f7bf375626d90ad\"\u003e\u003ccode\u003e6250b38\u003c/code\u003e\u003c/a\u003e clarify policy javadoc and add corresponding test cases (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1927\"\u003e#1927\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/c975fc07460d2fd4008c4d4d14044f65bb1323f2\"\u003e\u003ccode\u003ec975fc0\u003c/code\u003e\u003c/a\u003e upgrade error-prone static analyzer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/d8e0a92553ab230122bcd223363c1d8ca060bce7\"\u003e\u003ccode\u003ed8e0a92\u003c/code\u003e\u003c/a\u003e allow the project.version to be overridden by external builders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0e46d2225fece2ac0ce68d9bdd2a056af6015136\"\u003e\u003ccode\u003e0e46d22\u003c/code\u003e\u003c/a\u003e detect if the user's future is inconsistent with the results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/1971428f8b2fbd37fb57ed6a092de6d7c965f55a\"\u003e\u003ccode\u003e1971428\u003c/code\u003e\u003c/a\u003e use the assemble task for a full build without running the test suites\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/782ac79e079ae404ebb948afcc6f28b60aafd8dd\"\u003e\u003ccode\u003e782ac79\u003c/code\u003e\u003c/a\u003e use the key reference with the frequency sketch (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1902\"\u003e#1902\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/e0dd94b922b862b6afbaa59464f1d3cfb8a24596\"\u003e\u003ccode\u003ee0dd94b\u003c/code\u003e\u003c/a\u003e minor build clean up\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ben-manes/caffeine/compare/v3.2.0...v3.2.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.assertj:assertj-core` from 3.27.6 to 3.27.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assertj/assertj/releases\"\u003eorg.assertj:assertj-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.27.7\u003c/h2\u003e\n\u003ch2\u003e:lock: Security\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix XXE vulnerability in \u003ccode\u003eisXmlEqualTo\u003c/code\u003e assertion (CVE-2026-24400)\n\u003cul\u003e\n\u003cli\u003eSee GHSA-rqfh-9r24-8c9r for details; many thanks to \u003ca href=\"https://github.com/wxt201\"\u003e\u003ccode\u003e@​wxt201\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/Song-Li\"\u003e\u003ccode\u003e@​Song-Li\u003c/code\u003e\u003c/a\u003e for responsibly reporting it!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:no_entry_sign: Deprecated\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003eXmlStringPrettyFormatter\u003c/code\u003e with no replacement\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:bug: Bug Fixes\u003c/h2\u003e\n\u003ch3\u003eGuava\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNavigation to \u003ccode\u003eassertj-core\u003c/code\u003e or \u003ccode\u003eguava\u003c/code\u003e types from \u003ccode\u003eassertj-guava\u003c/code\u003e Javadoc site has unnecessary header \u003ca href=\"https://redirect.github.com/assertj/assertj/issues/3478\"\u003e#3478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Byte Buddy 1.18.3\u003c/li\u003e\n\u003cli\u003eUpgrade to JUnit BOM 5.14.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGuava\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Guava 33.5.0-jre\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/e84071667f5f8f13084af9dfa54cee5fd9db18db\"\u003e\u003ccode\u003ee840716\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release assertj-build-3.27.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/85ca7eb6609bb179c043b85ae7d290523b1ba79a\"\u003e\u003ccode\u003e85ca7eb\u003c/code\u003e\u003c/a\u003e Deprecate \u003ccode\u003eXmlStringPrettyFormatter\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/77081dc5eb107141df80f95bd0149b468e451341\"\u003e\u003ccode\u003e77081dc\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/b68fc24a9de28f28a486fc5b887c1b8a003a5823\"\u003e\u003ccode\u003eb68fc24\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4.31.9 to 4.31.10 in the github-actions group ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/0cf5bb6c50f6ead3deaa2a2ff50ef1e7d933c8a3\"\u003e\u003ccode\u003e0cf5bb6\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ekotlin.version\u003c/code\u003e from 2.1.0 to 2.2.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/d393ef1f5e48c89d47d7cf6d1eae359ceda0a126\"\u003e\u003ccode\u003ed393ef1\u003c/code\u003e\u003c/a\u003e Abort tests when symbolic links cannot be created (\u003ca href=\"https://redirect.github.com/assertj/assertj/issues/3788\"\u003e#3788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/22124331e9922af5a43ab50f7a9a25b65be53be1\"\u003e\u003ccode\u003e2212433\u003c/code\u003e\u003c/a\u003e Add IntelliJ custom inspection for test class names\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/5717d025cfe0f4c66de20f3253c0b0ecba259aa1\"\u003e\u003ccode\u003e5717d02\u003c/code\u003e\u003c/a\u003e Update JetBrains icon\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/a8ec20bd42ed01f9cc6f654046c7dd424b0af07c\"\u003e\u003ccode\u003ea8ec20b\u003c/code\u003e\u003c/a\u003e Add icon for JetBrains products\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/c05fb3d052b415fb2d6051df939f3b7903a76afe\"\u003e\u003ccode\u003ec05fb3d\u003c/code\u003e\u003c/a\u003e Bump Maven to 3.9.12 and Wrapper to 3.3.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/assertj/assertj/compare/assertj-build-3.27.6...assertj-build-3.27.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 3.5.8 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently ...\n\n_Description has been truncated_","html_url":"https://github.com/PetraRu6/booklore-solid-refactor/pull/18","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/PetraRu6%2Fbooklore-solid-refactor/issues/18","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/18/packages"}],"issue_packages":[{"old_version":"3.5.7","new_version":"3.5.10","update_type":"patch","path":null,"pr_created_at":"2026-09-04T03:06:38.000Z","version_change":"3.5.7 → 3.5.10","issue":{"uuid":"5343732959","node_id":"PR_kwDORvJjTc8AAAABCJLqzA","number":74,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 22 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T03:06:38.000Z","updated_at":"2026-09-04T05:02:30.047Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":22,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.10","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.0.3","new_version":"13.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.8"},{"name":"org.apache.pdfbox:jbig2-imageio","old_version":"3.0.4","new_version":"3.0.5"},{"name":"com.twelvemonkeys.imageio:imageio-jpeg","old_version":"3.13.1","new_version":"3.14.0"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"8.1.1","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.23.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.6","new_version":"4.0.9"},{"name":"org.freemarker:freemarker","old_version":"2.3.34","new_version":"2.3.35"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.3","new_version":"3.2.4","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.1.1","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.6.Final","new_version":"7.4.7.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.61.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.7.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 17 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.10` |\n| org.flywaydb:flyway-mysql | `12.0.3` | `13.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.8` |\n| org.apache.pdfbox:jbig2-imageio | `3.0.4` | `3.0.5` |\n| com.twelvemonkeys.imageio:imageio-jpeg | `3.13.1` | `3.14.0` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `8.1.1` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.23.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.1.0` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.6` | `4.0.9` |\n| org.freemarker:freemarker | `2.3.34` | `2.3.35` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.2.2` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.3` | `3.2.4` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.1.1` |\n| org.hibernate.orm | `7.2.6.Final` | `7.4.7.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.61.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.7.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.10\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.10\"\u003e3.5.10\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.9...3.5.10\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1333 - Add maxAllowedPacket connection option (send/receive limit)\u003c/li\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1330 - add infer test to CI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1307 - Connection.setReadOnly(true) still allows DML statements to execute\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1327 - Align SSL hostname verification with TLS libraries (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1331 - trustStore-configured TLS connections defer certificate-chain/identity validation instead of validating\nup front (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1340 - SQL injection via unescaped identifiers in updatable ResultSet generated statements (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1341 - MariaDbPoolDataSource.getConnection(user, password) ignores the user argument when the pool's own\npassword is supplied (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1328 - restrictedAuth allowlist is matched with substring contains() instead of equality (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1338 - Validate length-encoded integers fit a non-negative int before use as a length (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1336 - CONJ-1282 regression: TLS connection fails when JDBC hostname is an absolute FQDN ending with a trailing\ndot (report by Shaswata, thanks to Pepo48 for PR)\u003c/li\u003e\n\u003cli\u003eCONJ-1335 - getGeneratedKeys() throws \u0026quot;integer overflow\u0026quot; after a batch insert when the auto-increment value exceeds\nInteger.MAX_VALUE, and returns bulk generated keys out of batch order\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.9\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.9\"\u003e3.5.9\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.8...3.5.9\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1223 - cache TLS trust/key managers across connections to reduce SSL connection cost\u003c/li\u003e\n\u003cli\u003eCONJ-1314 - add SPI for interactive dialog (PAM) authentication callback\u003c/li\u003e\n\u003cli\u003eCONJ-1311 - add dedicated option \u003ccode\u003euseIpForKillQuery\u003c/code\u003e for query cancellation\u003c/li\u003e\n\u003cli\u003eCONJ-1310 - Add full native image support and CI coverage\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1320 - PAM (dialog) authentication must require a secure connection (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1319 - Use constant-time comparison when validating the server certificate fingerprint (report by jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - enforce \u003ccode\u003eallowLocalInfile=false\u003c/code\u003e on the server's local-infile request, so a malicious server cannot read a client file despite the option being disabled\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- 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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.10\"\u003e3.5.10\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.9...3.5.10\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1333 - Add maxAllowedPacket connection option (send/receive limit)\u003c/li\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1330 - add infer test to CI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1307 - Connection.setReadOnly(true) still allows DML statements to execute\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1327 - Align SSL hostname verification with TLS libraries (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1331 - trustStore-configured TLS connections defer certificate-chain/identity validation instead of validating\nup front (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1340 - SQL injection via unescaped identifiers in updatable ResultSet generated statements (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1341 - MariaDbPoolDataSource.getConnection(user, password) ignores the user argument when the pool's own\npassword is supplied (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1328 - restrictedAuth allowlist is matched with substring contains() instead of equality (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1338 - Validate length-encoded integers fit a non-negative int before use as a length (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1336 - CONJ-1282 regression: TLS connection fails when JDBC hostname is an absolute FQDN ending with a trailing\ndot (report by Shaswata, thanks to Pepo48 for PR)\u003c/li\u003e\n\u003cli\u003eCONJ-1335 - getGeneratedKeys() throws \u0026quot;integer overflow\u0026quot; after a batch insert when the auto-increment value exceeds\nInteger.MAX_VALUE, and returns bulk generated keys out of batch order\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.4.4\"\u003e3.4.4\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.4.3...3.4.4\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eNotable Changes\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/6164678e83aa9d203939d5bec73bd4571cbec8a2\"\u003e\u003ccode\u003e6164678\u003c/code\u003e\u003c/a\u003e [misc] update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/6f58858707c3d59881b171c40ec5ddd2773b0642\"\u003e\u003ccode\u003e6f58858\u003c/code\u003e\u003c/a\u003e [CONJ-1335] getGeneratedKeys() throws SQLDataException \u0026quot;integer overflow\u0026quot; aft...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/9f06db76c8502fa952dcd4de6ebe46cfe3f6ead9\"\u003e\u003ccode\u003e9f06db7\u003c/code\u003e\u003c/a\u003e [misc] CI stability improvement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/99aa9e2e7b84ecf4edec20beeac37752066599c8\"\u003e\u003ccode\u003e99aa9e2\u003c/code\u003e\u003c/a\u003e [CONJ-1336] correction follow up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/28a1550357fd3773a1cda68d545e79573c26bc8a\"\u003e\u003ccode\u003e28a1550\u003c/code\u003e\u003c/a\u003e [CONJ-1336] strip trailing dot from hostname before SNI and hostname verifica...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/b2b3f1beb8a5cb83f48e68ed7b912c637da0634e\"\u003e\u003ccode\u003eb2b3f1b\u003c/code\u003e\u003c/a\u003e [misc] limit authentication switch requests to 10 per connection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26ca60ab4a6d58905d8beef98428bf04d6cd4a5f\"\u003e\u003ccode\u003e26ca60a\u003c/code\u003e\u003c/a\u003e [misc] bound the whole connection phase by connectTimeout\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/15e08ff54fd0247a5491fe2695562d36b8e7f7c2\"\u003e\u003ccode\u003e15e08ff\u003c/code\u003e\u003c/a\u003e [CONJ-1337] Limit parsec authentication PBKDF2 iteration factor to the connec...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d3c4a726d7cfcc0fa10ee4cdcca423a7d88c67ab\"\u003e\u003ccode\u003ed3c4a72\u003c/code\u003e\u003c/a\u003e bump 3.5.10 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d85e05f4dc010ce40df548cf908da6bbc2640903\"\u003e\u003ccode\u003ed85e05f\u003c/code\u003e\u003c/a\u003e [CONJ-1342] socketFactory option allows loading arbitrary bytecode via jar: U...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.0.3 to 13.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.8\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.8\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.8\n\nUpdates `org.apache.pdfbox:jbig2-imageio` from 3.0.4 to 3.0.5\n\nUpdates `com.twelvemonkeys.imageio:imageio-jpeg` from 3.13.1 to 3.14.0\n\nUpdates `com.twelvemonkeys.imageio:imageio-tiff` from 3.13.1 to 3.14.0\n\nUpdates `com.twelvemonkeys.imageio:imageio-webp` from 3.13.1 to 3.14.0\n\nUpdates `com.twelvemonkeys.imageio:imageio-bmp` from 3.13.1 to 3.14.0\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 8.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v8.1.1\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eio\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereadLongBigEndian returned only the low 32 bits (\u003ca href=\"https://github.com/junrar/junrar/commits/efdbd79\"\u003eefdbd79\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003erar3\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eread the Unix owners sub-block names within its bounds (\u003ca href=\"https://github.com/junrar/junrar/commits/27d7755\"\u003e27d7755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebound the remaining header reads and keep reading past a broken header (\u003ca href=\"https://github.com/junrar/junrar/commits/8301bcb\"\u003e8301bcb\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/12\"\u003e#12\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebound the extended-time reads left unguarded by v7.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/da5ef82\"\u003eda5ef82\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/12\"\u003e#12\u003c/a\u003e \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/86\"\u003e#86\u003c/a\u003e \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/87\"\u003e#87\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ekeep extracting when an entry name has no Path on this JVM (\u003ca href=\"https://github.com/junrar/junrar/commits/510b792\"\u003e510b792\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔄️ Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esatisfy spotless in the changed method (\u003ca href=\"https://github.com/junrar/junrar/commits/6557837\"\u003e6557837\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereproduce the unrepresentable name without a locale (\u003ca href=\"https://github.com/junrar/junrar/commits/06aefef\"\u003e06aefef\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle from 9.6.1 to 9.7.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/1de660e\"\u003e1de660e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/d79e3a5\"\u003ed79e3a5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.diffplug.spotless from 8.9.0 to 8.10.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/8787a21\"\u003e8787a21\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/facf4d5\"\u003efacf4d5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump io.github.ben-manes.versions.settings (\u003ca href=\"https://github.com/junrar/junrar/commits/a17162c\"\u003ea17162c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 10 to 11 (\u003ca href=\"https://github.com/junrar/junrar/commits/c866a6f\"\u003ec866a6f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.bouncycastle:bcprov-jdk18on from 1.85 to 1.85.2 (\u003ca href=\"https://github.com/junrar/junrar/commits/8017539\"\u003e8017539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 6.2.0 to 6.3.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/1397fab\"\u003e1397fab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.58.0 to 0.59.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/a16c9f4\"\u003ea16c9f4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.54.0 to 0.58.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/dcb0afb\"\u003edcb0afb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.diffplug.spotless from 8.8.0 to 8.9.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5829d84\"\u003e5829d84\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 6 to 6.2.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/0b3f663\"\u003e0b3f663\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupdate svu install (\u003ca href=\"https://github.com/junrar/junrar/commits/09ad661\"\u003e09ad661\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nAndre Brait, Gauthier, Gauthier Roebroeck, Nexory, Sean R\u003c/p\u003e\n\u003ch2\u003eRelease v8.1.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v8.1.0...v8.1.1\"\u003e8.1.1\u003c/a\u003e (2026-08-31)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eio\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereadLongBigEndian returned only the low 32 bits (\u003ca href=\"https://github.com/junrar/junrar/commits/efdbd79\"\u003eefdbd79\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003erar3\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eread the Unix owners sub-block names within its bounds (\u003ca href=\"https://github.com/junrar/junrar/commits/27d7755\"\u003e27d7755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebound the remaining header reads and keep reading past a broken header (\u003ca href=\"https://github.com/junrar/junrar/commits/8301bcb\"\u003e8301bcb\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/12\"\u003e#12\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebound the extended-time reads left unguarded by v7.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/da5ef82\"\u003eda5ef82\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/12\"\u003e#12\u003c/a\u003e \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/86\"\u003e#86\u003c/a\u003e \u003ca href=\"https://redirect.github.com/junrar/junrar/issues/87\"\u003e#87\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ekeep extracting when an entry name has no Path on this JVM (\u003ca href=\"https://github.com/junrar/junrar/commits/510b792\"\u003e510b792\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔄️ Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esatisfy spotless in the changed method (\u003ca href=\"https://github.com/junrar/junrar/commits/6557837\"\u003e6557837\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereproduce the unrepresentable name without a locale (\u003ca href=\"https://github.com/junrar/junrar/commits/06aefef\"\u003e06aefef\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle from 9.6.1 to 9.7.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/1de660e\"\u003e1de660e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/d79e3a5\"\u003ed79e3a5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.diffplug.spotless from 8.9.0 to 8.10.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/8787a21\"\u003e8787a21\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/facf4d5\"\u003efacf4d5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump io.github.ben-manes.versions.settings (\u003ca href=\"https://github.com/junrar/junrar/commits/a17162c\"\u003ea17162c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 10 to 11 (\u003ca href=\"https://github.com/junrar/junrar/commits/c866a6f\"\u003ec866a6f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.bouncycastle:bcprov-jdk18on from 1.85 to 1.85.2 (\u003ca href=\"https://github.com/junrar/junrar/commits/8017539\"\u003e8017539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 6.2.0 to 6.3.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/1397fab\"\u003e1397fab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.58.0 to 0.59.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/a16c9f4\"\u003ea16c9f4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.54.0 to 0.58.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/dcb0afb\"\u003edcb0afb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.diffplug.spotless from 8.8.0 to 8.9.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5829d84\"\u003e5829d84\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 6 to 6.2.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/0b3f663\"\u003e0b3f663\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupdate svu install (\u003ca href=\"https://github.com/junrar/junrar/commits/09ad661\"\u003e09ad661\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v8.0.0...v8.1.0\"\u003e8.1.0\u003c/a\u003e (2026-08-03)\u003c/h1\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ecrypt\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edecrypt legacy RAR 1.3/1.5/2.0 encrypted entries (\u003ca href=\"https://github.com/junrar/junrar/commits/5da2cb6\"\u003e5da2cb6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003erar14\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eextract entries spanning multiple RAR 1.4 volumes (\u003ca href=\"https://github.com/junrar/junrar/commits/a4b9591\"\u003ea4b9591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eextract RAR 1.4 entries with Checksum14 verification (\u003ca href=\"https://github.com/junrar/junrar/commits/11f1d23\"\u003e11f1d23\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eparse RAR 1.4 headers and list entries (\u003ca href=\"https://github.com/junrar/junrar/commits/7ac5a8c\"\u003e7ac5a8c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Fixes\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/junrar/junrar/commit/1de660e148790448591e1d4076b2c961a1bfbca5\"\u003e\u003ccode\u003e1de660e\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle from 9.6.1 to 9.7.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d79e3a59f0313d82f38a91fff6a5634ba28c00ea\"\u003e\u003ccode\u003ed79e3a5\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/8787a2146ccebbee8e138465d4917bcbd3e6de16\"\u003e\u003ccode\u003e8787a21\u003c/code\u003e\u003c/a\u003e build(deps): bump com.diffplug.spotless from 8.9.0 to 8.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/facf4d5f884b80abe1857d4870fd6493eb959072\"\u003e\u003ccode\u003efacf4d5\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a17162c6e2bafa02808ba891959020e31bcb79ac\"\u003e\u003ccode\u003ea17162c\u003c/code\u003e\u003c/a\u003e build(deps): bump io.github.ben-manes.versions.settings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/efdbd79ad22f142415936918f2f0f0478e1b0277\"\u003e\u003ccode\u003eefdbd79\u003c/code\u003e\u003c/a\u003e fix(io): readLongBigEndian returned only the low 32 bits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/65578378b0e63656e4948d2a22186fc99f536847\"\u003e\u003ccode\u003e6557837\u003c/code\u003e\u003c/a\u003e style: satisfy spotless in the changed method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/06aefef4769a55cc2ef0acfaebc649cfb6044f91\"\u003e\u003ccode\u003e06aefef\u003c/code\u003e\u003c/a\u003e test: reproduce the unrepresentable name without a locale\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/510b792d03c493a3ef4404aa44288ca419f0d972\"\u003e\u003ccode\u003e510b792\u003c/code\u003e\u003c/a\u003e fix: keep extracting when an entry name has no Path on this JVM\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/c866a6f1611afdef476ccbc41ca9d51931565f01\"\u003e\u003ccode\u003ec866a6f\u003c/code\u003e\u003c/a\u003e build(deps): bump EndBug/add-and-commit from 10 to 11\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v8.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.23.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup 1.23.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.23.2\u003c/strong\u003e is out now. This release focuses largely on bug fixes, specification correctness, and performance improvements.\u003c/p\u003e\n\u003cp\u003eIt brings closer alignment with the HTML, XML, URL, and form submission specifications; improves XML and W3C DOM conversion; and makes HTTP workloads more efficient through streamed request bodies and broader JDK \u003ccode\u003eHttpClient\u003c/code\u003e reuse.\u003c/p\u003e\n\u003cp\u003eThis version also includes new node insertion methods for \u003ccode\u003eElements\u003c/code\u003e, and DOM mutations now reject operations that would create a cycle.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://jsoup.org/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved consecutive \u003ccode\u003eStreamParser.selectFirst()\u003c/code\u003e calls during progressive parsing, so later matches are returned with their parsed contents when earlier selections had left them as parser lookahead. E.g., given \u003ccode\u003e\u0026lt;title\u0026gt;One\u0026lt;/title\u0026gt;\u0026lt;p id=hit\u0026gt;Full\u0026lt;/p\u0026gt;\u0026lt;p\u0026gt;Next\u0026lt;/p\u0026gt;\u003c/code\u003e, selecting \u003ccode\u003etitle\u003c/code\u003e and then \u003ccode\u003e#hit\u003c/code\u003e now advances the partial lookahead and returns \u003ccode\u003e\u0026lt;p id=\u0026quot;hit\u0026quot;\u0026gt;Full\u0026lt;/p\u0026gt;\u003c/code\u003e, rather than returning an empty \u003ccode\u003e\u0026lt;p id=\u0026quot;hit\u0026quot;\u0026gt;\u0026lt;/p\u0026gt;\u003c/code\u003e before its content is parsed. The updated readiness tracking follows StreamParser's normal emission order across implicit HTML structure and parser recovery. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2551\"\u003e#2551\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved XML parser performance and memory use for documents with many nested namespace declarations by recording namespace changes within each element scope. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2556\"\u003e#2556\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eW3CDom\u003c/code\u003e conversion performance for documents with many nested namespace declarations. The W3C converter now uses the same optimized namespace tracking as the XML parser. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2559\"\u003e#2559\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eW3CDom\u003c/code\u003e XML conversion to retain processing instructions, comments outside the root element, and CDATA sections, which were previously dropped or converted to text. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2572\"\u003e#2572\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDOM mutation methods, including child insertion and replacement, now reject operations that would create a cycle, such as making a node its own child or moving an ancestor beneath a descendant. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2552\"\u003e#2552\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eElements#before(Node)\u003c/code\u003e, \u003ccode\u003eafter(Node)\u003c/code\u003e, \u003ccode\u003eprepend(Node)\u003c/code\u003e, and \u003ccode\u003eappend(Node)\u003c/code\u003e to match the existing HTML string methods. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/953\"\u003e#953\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eLarge file-backed uploads through \u003ccode\u003eConnection.requestBodyStream(InputStream)\u003c/code\u003e now stream directly with the JDK \u003ccode\u003eHttpClient\u003c/code\u003e on Java 11+, rather than being loaded fully into memory first. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2576\"\u003e#2575\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eExtended Java 11+ HTTP client reuse from requests sharing a \u003ccode\u003eJsoup.newSession()\u003c/code\u003e to ordinary \u003ccode\u003eJsoup.connect()\u003c/code\u003e calls, reducing transport thread and connection setup churn under sustained request loads. Sessions with custom authentication or SSL contexts continue to use their own client. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2584\"\u003e#2584\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAligned the XML parser stack depth and lookups to the configured maximum, which now defaults to 512 for both HTML and XML. Use \u003ccode\u003eParser#setMaxDepth(int)\u003c/code\u003e to configure. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2570\"\u003e#2570\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003eW3CDom\u003c/code\u003e namespace conversion in several cases: \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2559\"\u003e#2559\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003eNamespace declarations and prefixed attributes now carry the correct namespace URI, so namespace-aware DOM lookups work as expected.\u003c/li\u003e\n\u003cli\u003eAttributes added after parsing, or included through subtree conversion, now use inherited prefix declarations.\u003c/li\u003e\n\u003cli\u003eNamespace declarations now apply regardless of attribute order, and an empty declaration shadows an inherited binding only within its scope.\u003c/li\u003e\n\u003cli\u003eWith namespace awareness disabled, inherited and undeclared prefixes now receive the declarations needed for XML serialization.\u003c/li\u003e\n\u003cli\u003eValid HTML names that are not XML QNames, such as \u003ccode\u003ea:b:c\u003c/code\u003e, are normalized. Attributes that still cannot be represented are skipped, and unrepresentable elements no longer change the surrounding tree.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eW3CDom\u003c/code\u003e conversion of programmatically created or renamed elements whose names can be represented in a jsoup HTML DOM but are not valid XML names, such as \u003ccode\u003e1abc\u003c/code\u003e. These names are now normalized (e.g. \u003ccode\u003e_1abc\u003c/code\u003e) instead of causing a \u003ccode\u003eNullPointerException\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2560\"\u003e#2560\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed XML doctype serialization when a system identifier contains a double quote, which could otherwise produce invalid XML. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2571\"\u003e#2571\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eXML serialization now repairs element and attribute names that start with an invalid character, rather than outputting \u003ccode\u003enull\u003c/code\u003e elements or dropping attributes. For example, an attribute named \u003ccode\u003e1a\u003c/code\u003e is written as \u003ccode\u003e_1a\u003c/code\u003e. Additional leading underscores keep repaired attribute names unique if they conflict with another attribute. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2573\"\u003e#2573\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eSupplementary Unicode characters are now escaped correctly when serializing with non-UTF, non-ASCII output charsets such as ISO-8859-1. Previously, characters could be emitted unescaped when their low 16-bit value was representable by the configured charset, causing replacement or corruption when the output was encoded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2578\"\u003e#2578\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed the JDK \u003ccode\u003eHttpClient\u003c/code\u003e implementation to accept responses missing a \u003ccode\u003eContent-Type\u003c/code\u003e header, matching the \u003ccode\u003eHttpURLConnection\u003c/code\u003e implementation. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2549\"\u003e#2549\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed HTTP response content-type matching to handle media types case-insensitively and recognize structured \u003ccode\u003e+xml\u003c/code\u003e suffixes, including vendor-specific media types. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2550\"\u003e#2550\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eHTTP request URL normalization now percent-encodes ASCII control characters, DEL, and embedded fragment delimiters, keeping normalized URLs valid for HTTP requests while preserving existing escapes. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2585\"\u003e#2585\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eCorrected multipart form encoding to percent-escape CR and LF in field names and filenames, matching the HTML form submission specification. Multipart file content-types containing CR or LF are now rejected with a \u003ccode\u003eValidationException\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2555\"\u003e#2555\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eAligned trailing comment placement with the HTML specification: comments after \u003ccode\u003e\u0026lt;/body\u0026gt;\u003c/code\u003e remain children of the \u003ccode\u003ehtml\u003c/code\u003e element, while comments after \u003ccode\u003e\u0026lt;/html\u0026gt;\u003c/code\u003e remain children of the document. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2557\"\u003e#2557\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eWhen using the optional \u003ccode\u003ere2j\u003c/code\u003e regular expression engine, memory allocation errors caused by complex selector patterns at match time are now normalized to a \u003ccode\u003eValidationException\u003c/code\u003e with a \u003ccode\u003ePattern complexity error\u003c/code\u003e message.\u003c/li\u003e\n\u003cli\u003eFixed parsing of malformed SVG and MathML content so that breakout HTML tags are placed according to the HTML specification. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2562\"\u003e#2562\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed deeply nested malformed HTML parsing that could lose the document body because stack lookups did not align to the configured maximum parser depth. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2569\"\u003e#2569\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eAligned RCDATA, RAWTEXT, and script-data parsing with the HTML specification: malformed end tags no longer consume following markup, unclosed \u003ccode\u003etitle\u003c/code\u003e/\u003ccode\u003etextarea\u003c/code\u003e content stays text through EOF, and custom text tags match exact names. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2577\"\u003e#2577\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved URL validation during HTTP/HTTPS URL resolution and cleaning; resolved URLs without a host are now rejected instead of being accepted based only on their scheme prefix, aligning to RFC 9110. Valid relative links and non-HTTP(S) schemes are unchanged. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2579\"\u003e#2579\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eRedirects with malformed single-slash HTTP locations now use standard URL resolution to align with browsers. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2580\"\u003e#2580\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eTemplate fragment parsing now handles unmatched \u003ccode\u003e\u0026lt;/template\u0026gt;\u003c/code\u003e tags without throwing a \u003ccode\u003eValidationException\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2581\"\u003e#2581\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved source tracking for adopted formatting elements and malformed markup ending at EOF. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2582\"\u003e#2582\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003c!-- 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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.23.2 (2026-Aug-26)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved consecutive \u003ccode\u003eStreamParser.selectFirst(...)\u003c/code\u003e calls during progressive parsing, so later matches are returned with their parsed contents when earlier selections had left them as parser lookahead. E.g., given \u003ccode\u003e\u0026lt;title\u0026gt;One\u0026lt;/title\u0026gt;\u0026lt;p id=hit\u0026gt;Full\u0026lt;/p\u0026gt;\u0026lt;p\u0026gt;Next\u0026lt;/p\u0026gt;\u003c/code\u003e, selecting \u003ccode\u003etitle\u003c/code\u003e and then \u003ccode\u003e#hit\u003c/code\u003e now advances the partial lookahead and returns \u003ccode\u003e\u0026lt;p id=\u0026quot;hit\u0026quot;\u0026gt;Full\u0026lt;/p\u0026gt;\u003c/code\u003e, rather than returning an empty \u003ccode\u003e\u0026lt;p id=\u0026quot;hit\u0026quot;\u0026gt;\u0026lt;/p\u0026gt;\u003c/code\u003e before its content is parsed. The updated readiness tracking follows StreamParser's normal emission order across implicit HTML structure and parser recovery. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2551\"\u003e#2551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved XML parser performance and memory use for documents with many nested namespace declarations by recording namespace changes within each element scope. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2556\"\u003e#2556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eW3CDom\u003c/code\u003e conversion performance for documents with many nested namespace declarations. The W3C converter now uses the same optimized namespace tracking as the XML parser. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2559\"\u003e#2559\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eW3CDom\u003c/code\u003e XML conversion to retain processing instructions, comments outside the root element, and CDATA sections, which were previously dropped or converted to text. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2572\"\u003e#2572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDOM mutation methods, including child insertion and replacement, now reject operations that would create a cycle, such as making a node its own child or moving an ancestor beneath a descendant. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2552\"\u003e#2552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eElements#before(Node)\u003c/code\u003e, \u003ccode\u003eafter(Node)\u003c/code\u003e, \u003ccode\u003eprepend(Node)\u003c/code\u003e, and \u003ccode\u003eappend(Node)\u003c/code\u003e to match the existing HTML string methods. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/953\"\u003e#953\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLarge file-backed uploads through \u003ccode\u003eConnection.requestBodyStream(InputStream)\u003c/code\u003e now stream directly with the JDK \u003ccode\u003eHttpClient\u003c/code\u003e on Java 11+, rather than being loaded fully into memory first. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2576\"\u003e#2575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExtended Java 11+ HTTP client reuse from requests sharing a \u003ccode\u003eJsoup.newSession()\u003c/code\u003e to ordinary \u003ccode\u003eJsoup.connect(...)\u003c/code\u003e calls, reducing transport thread and connection setup churn under sustained request loads. Sessions with custom authentication or SSL contexts continue to use their own client. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2584\"\u003e#2584\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAligned the XML parser stack depth and lookups to the configured maximum, which now defaults to 512 for both HTML and XML. Use \u003ccode\u003eParser#setMaxDepth(int)\u003c/code\u003e to configure. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2570\"\u003e#2570\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003eW3CDom\u003c/code\u003e namespace conversion in several cases: \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2559\"\u003e#2559\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eNamespace declarations and prefixed attributes now carry the correct namespace URI, so namespace-aware DOM lookups work as expected.\u003c/li\u003e\n\u003cli\u003eAttributes added after parsing, or included through subtree conversion, now use inherited prefix declarations.\u003c/li\u003e\n\u003cli\u003eNamespace declarations now apply regardless of attribute order, and an empty declaration shadows an inherited binding only within its scope.\u003c/li\u003e\n\u003cli\u003eWith namespace awareness disabled, inherited and undeclared prefixes now receive the declarations needed for XML serialization.\u003c/li\u003e\n\u003cli\u003eValid HTML names that are not XML QNames, such as \u003ccode\u003ea:b:c\u003c/code\u003e, are normalized. Attributes that still cannot be represented are skipped, and unrepresentable elements no longer change the surrounding tree.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eW3CDom\u003c/code\u003e conversion of programmatically created or renamed elements whose names can be represented in a jsoup HTML DOM but are not valid XML names, such as \u003ccode\u003e1abc\u003c/code\u003e. These names are now normalized (e.g. \u003ccode\u003e_1abc\u003c/code\u003e) instead of causing a \u003ccode\u003eNullPointerException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2560\"\u003e#2560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed XML doctype serialization when a system identifier contains a double quote, which could otherwise produce invalid XML. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2571\"\u003e#2571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eXML serialization now repairs element and attribute names that start with an invalid character, rather than outputting \u003ccode\u003enull\u003c/code\u003e elements or dropping attributes. For example, an attribute named \u003ccode\u003e1a\u003c/code\u003e is written as \u003ccode\u003e_1a\u003c/code\u003e. Additional leading underscores keep repaired attribute names unique if they conflict with another attribute. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2573\"\u003e#2573\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupplementary Unicode characters are now escaped correctly when serializing with non-UTF, non-ASCII output charsets such as ISO-8859-1. Previously, characters could be emitted unescaped when their low 16-bit value was representable by the configured charset, causing replacement or corruption when the output was encoded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2578\"\u003e#2578\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed the JDK \u003ccode\u003eHttpClient\u003c/code\u003e implementation to accept responses missing a \u003ccode\u003eContent-Type\u003c/code\u003e header, matching the \u003ccode\u003eHttpURLConnection\u003c/code\u003e implementation. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2549\"\u003e#2549\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed HTTP response content-type matching to handle media types case-insensitively and recognize structured \u003ccode\u003e+xml\u003c/code\u003e suffixes, including vendor-specific media types. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2550\"\u003e#2550\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP request URL normalization now percent-encodes ASCII control characters, DEL, and embedded fragment delimiters, keeping normalized URLs valid for HTTP requests while preserving existing escapes. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2585\"\u003e#2585\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCorrected multipart form encoding to percent-escape CR and LF in field names and filenames, matching the HTML form submission specification. Multipart file content-types containing CR or LF are now rejected with a \u003ccode\u003eValidationException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2555\"\u003e#2555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAligned trailing comment placement with the HTML specification: comments after \u003ccode\u003e\u0026lt;/body\u0026gt;\u003c/code\u003e remain children of the \u003ccode\u003ehtml\u003c/code\u003e element, while comments after \u003ccode\u003e\u0026lt;/html\u0026gt;\u003c/code\u003e remain children of the document. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2557\"\u003e#2557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen using the optional \u003ccode\u003ere2j\u003c/code\u003e regular expression engine, memory allocation errors caused by complex selector patterns at match time are now normalized to a \u003ccode\u003eValidationException\u003c/code\u003e with a \u003ccode\u003ePattern complexity error\u003c/code\u003e message.\u003c/li\u003e\n\u003cli\u003eFixed parsing of malformed SVG and MathML content so that breakout HTML tags are placed according to the HTML specification. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2562\"\u003e#2562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed deeply nested malformed HTML parsing that could lose the document body because stack lookups did not align to the configured maximum parser depth. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2569\"\u003e#2569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAligned RCDATA, RAWTEXT, and script-data parsing with the HTML specification: malformed end tags no longer consume following markup, unclosed \u003ccode\u003etitle\u003c/code\u003e/\u003ccode\u003etextarea\u003c/code\u003e content stays text through EOF, and custom text tags match exact names. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2577\"\u003e#2577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved URL validation during HTTP/HTTPS URL resolution and cleaning; resolved URLs without a host are now rejected instead of being accepted based only on their scheme prefix, aligning to RFC 9110. Valid relative links and non-HTTP(S) schemes are unchanged. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2579\"\u003e#2579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRedirects with malformed single-slash HTTP locations now use standard URL resolution to align with browsers. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2580\"\u003e#2580\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTemplate fragment parsing now handles unmatched \u003ccode\u003e\u0026lt;/template\u0026gt;\u003c/code\u003e tags without throwing a \u003ccode\u003eValidationException\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2581\"\u003e#2581\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved source tracking for adopted formatting elements and malformed markup ending at EOF. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2582\"\u003e#2582\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.23.1 (2026-Jul-30)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReduced retained memory when parsing with source position tracking enabled (\u003ccode\u003eParser#setTrackPosition(true)\u003c/code\u003e). Source ranges are now stored in compact parser-owned span records instead of node and attribute user data, and \u003ccode\u003ePosition\u003c/code\u003e objects are created lazily when source ranges are read. This cuts tracked DOM retained size by about 50-60% on representative benchmark documents, while keeping \u003ccode\u003eNode#sourceRange()\u003c/code\u003e, \u003ccode\u003eElement#endSourceRange()\u003c/code\u003e, and \u003ccode\u003eAttribute#sourceRange()\u003c/code\u003e behavior intact. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2498\"\u003e#2498\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eElement#classList()\u003c/code\u003e, an immutable snapshot of an element's class names in attribute order. Use \u003ccode\u003ehasClass()\u003c/code\u003e when you just need to test for one class, \u003ccode\u003eclassList()\u003c/code\u003e when you want to read or iterate classes without needing a mutable result, and \u003ccode\u003eclassNames()\u003c/code\u003e when you want the existing mutable, deduplicated set that can be written back with \u003ccode\u003eclassNames(Set)\u003c/code\u003e. The class APIs now share an HTML-whitespace scanner, which also makes \u003ccode\u003eclassNames()\u003c/code\u003e faster and lighter on allocation, especially when walking many elements without class names. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2500\"\u003e#2500\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAligned HTML parser scope classification with the current HTML spec for \u003ccode\u003eselect\u003c/code\u003e, \u003ccode\u003eforeignObject\u003c/code\u003e, and \u003ccode\u003etemplate\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2501\"\u003e#2501\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSimplified the HTML tree builder's scope, implied-end-tag, and special-element checks by caching parser-only options on Tag. That improves HTML parser throughput by about 10% on small inputs and up to about 30% on larger inputs in the benchmark fixtures. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2502\"\u003e#2502\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved HTML parser throughput stability by making hot tokeniser scan paths compile more predictably. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2507\"\u003e#2507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026lt;noscript\u0026gt;\u003c/code\u003e fallback markup is now parsed into an inspectable DOM subtree in both the document head and body. The fallback acts as a contained parsing island, so malformed markup cannot disrupt the surrounding document structure, while normal HTML tokenization still applies within it. This also improves round-trip serialization. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2537\"\u003e#2537\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved redirect credential handling as a defense-in-depth measure: explicit authorization headers and request cookies are no longer forwarded across origins, reducing exposure through open redirects and aligning with HTTP guidance. Cookies managed by a \u003ccode\u003eCookieStore\u003c/code\u003e continue to follow their configured scope. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2540\"\u003e#2540\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/jhy/jsoup/commit/fbc7775c462f5b023d8db54c9a73d7ec17d53300\"\u003e\u003ccode\u003efbc7775\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.23.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/133ebde65afda061ea12818e1e65a53f5d822ea4\"\u003e\u003ccode\u003e133ebde\u003c/code\u003e\u003c/a\u003e Release 1.23.2 notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/be2a74a1f6b3ad9cf2d3aeaac3f68b6c39929bc5\"\u003e\u003ccode\u003ebe2a74a\u003c/code\u003e\u003c/a\u003e Encode control chars during request URL normalization (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2585\"\u003e#2585\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/868f2eb1e6c9a2b826cd56f92b336fdbd616b241\"\u003e\u003ccode\u003e868f2eb\u003c/code\u003e\u003c/a\u003e Java 11 HTTP client reuse covers ordinary connections (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2584\"\u003e#2584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/19c758e2e4abc6a1f52193ceab09c22a7c010f8b\"\u003e\u003ccode\u003e19c758e\u003c/code\u003e\u003c/a\u003e Get Animal Sniffer to run over test code as well.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/17bb839aa5aa1519c729d78656d18adefee730cf\"\u003e\u003ccode\u003e17bb839\u003c/code\u003e\u003c/a\u003e Fix source tracking through HTML repair and malformed EOF (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2582\"\u003e#2582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cad054a61f3ae241a741b6658c50d6f962dfd43c\"\u003e\u003ccode\u003ecad054a\u003c/code\u003e\u003c/a\u003e Template stack checks need to exclude the fragment context (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2581\"\u003e#2581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/46b620860af930eedc193a705eaf7cea5aec89a6\"\u003e\u003ccode\u003e46b6208\u003c/code\u003e\u003c/a\u003e Paranoimia\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/66be2da4e2bd7a207700a4cc9c867d15ae74a587\"\u003e\u003ccode\u003e66be2da\u003c/code\u003e\u003c/a\u003e HTTP redirects use standard URL resolution for single-slash locations (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2580\"\u003e#2580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/b035b623d3d1d0c50d84056d2946ba1a90f7f665\"\u003e\u003ccode\u003eb035b62\u003c/code\u003e\u003c/a\u003e Make hostless HTTP(S) URLs fail resolution and cleaning (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2579\"\u003e#2579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.23.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3,1,0 released!\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix request-specific Swagger UI index transformations by \u003ca href=\"https://github.com/limehee\"\u003e\u003ccode\u003e@​limehee\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3279\"\u003espringdoc/springdoc-openapi#3279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3282\"\u003e#3282\u003c/a\u003e: preserve nest() version predicate across all routes in nest by \u003ca href=\"https://github.com/seonwooj0810\"\u003e\u003ccode\u003e@​seonwooj0810\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3296\"\u003espringdoc/springdoc-openapi#3296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.1.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Spring AI to version \u003cstrong\u003e2.0.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.52\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.11\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3307\"\u003e#3307\u003c/a\u003e – Act upon SonarQube warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3306\"\u003e#3306\u003c/a\u003e – Act upon SonarQube warnings\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3269\"\u003e#3269\u003c/a\u003e – Add mechanism to disable \u003ccode\u003enullable\u003c/code\u003e for Kotlin properties\u003c/li\u003e\n\u003cli\u003eAllow request-specific Swagger UI index transformation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3304\"\u003e#3304\u003c/a\u003e – Kotlin parent class's field is not properly marked as nullable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3294\"\u003e#3294\u003c/a\u003e – Duplicated path getting \u003ccode\u003eswagger-config\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3293\"\u003e#3293\u003c/a\u003e – Inconsistent OpenAPI schema naming with \u003ccode\u003eSNAKE_CASE\u003c/code\u003e: some Java record fields remain camelCase\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3292\"\u003e#3292\u003c/a\u003e – Make \u003ccode\u003eWebProperties\u003c/code\u003e and \u003ccode\u003eWebMvcProperties\u003c/code\u003e optional in \u003ccode\u003eSwaggerConfig\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3284\"\u003e#3284\u003c/a\u003e – Upgrade swagger-core from version 2.2.48 to 2.2.49\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3282\"\u003e#3282\u003c/a\u003e – Preserve version from \u003ccode\u003enest()\u003c/code\u003e predicate across all routes in \u003ccode\u003enest\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3281\"\u003e#3281\u003c/a\u003e – Stabilize Spring Data \u003ccode\u003ePage\u003c/code\u003e schema property order\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3274\"\u003e#3274\u003c/a\u003e – Description disappears from the generated json after upgrade to 3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3270\"\u003e#3270\u003c/a\u003e – Validation annotation of \u003ccode\u003eParameterObject\u003c/code\u003e property applied to \u003ccode\u003ePathVariable\u003c/code\u003e with the same name, even in unrelated endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3266\"\u003e#3266\u003c/a\u003e – Upgrade swagger-core from version 2.2.47 to 2.2.48\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3263\"\u003e#3263\u003c/a\u003e – Null key for a \u003ccode\u003eMap\u003c/code\u003e not allowed in JSON\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.3...v3.1.0\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.3...v3.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- 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/springdoc/springdoc-openapi/blob/main/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.1.0] - 2026-07-31\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3269\"\u003e#3269\u003c/a\u003e – Add mechanism to disable \u003ccode\u003enullable\u003c/code\u003e for Kotlin properties\u003c/li\u003e\n\u003cli\u003eAllow request-specific Swagger UI index transformation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.1.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Spring AI to version \u003cstrong\u003e2.0.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.52\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.11\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3307\"\u003e#3307\u003c/a\u003e – Act upon SonarQube warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3306\"\u003e#3306\u003c/a\u003e – Act upon SonarQube warnings\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3304\"\u003e#3304\u003c/a\u003e – Kotlin parent class's field is not properly marked as nullable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3294\"\u003e#3294\u003c/a\u003e – Duplicated path getting \u003ccode\u003eswagger-config\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3293\"\u003e#3293\u003c/a\u003e – Inconsistent OpenAPI schema naming with \u003ccode\u003eSNAKE_CASE\u003c/code\u003e: some Java record fields remain camelCase\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3292\"\u003e#3292\u003c/a\u003e – Make \u003ccode\u003eWebProperties\u003c/code\u003e and \u003ccode\u003eWebMvcProperties\u003c/code\u003e optional in \u003ccode\u003eSwaggerConfig\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3284\"\u003e#3284\u003c/a\u003e – Upgrade swagger-core from version 2.2.48 to 2.2.49\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3282\"\u003e#3282\u003c/a\u003e – Preserve version from \u003ccode\u003enest()\u003c/code\u003e predicate across all routes in \u003ccode\u003enest\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3281\"\u003e#3281\u003c/a\u003e – Stabilize Spring Data \u003ccode\u003ePage\u003c/code\u003e schema property order\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3274\"\u003e#3274\u003c/a\u003e – Description disappears from the generated json after upgrade to 3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3270\"\u003e#3270\u003c/a\u003e – Validation annotation of \u003ccode\u003eParameterObject\u003c/code\u003e property applied to \u003ccode\u003ePathVariable\u003c/code\u003e with the same name, even in unrelated endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3266\"\u003e#3266\u003c/a\u003e – Upgrade swagger-core from version 2.2.47 to 2.2.48\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3263\"\u003e#3263\u003c/a\u003e – Null key for a \u003ccode\u003eMap\u003c/code\u003e not allowed in JSON\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/e04f91f10267bc7f31e9031886dd3a46bb77c938\"\u003e\u003ccode\u003ee04f91f\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/83551ce77894346de853f5755879ff8acb698e49\"\u003e\u003ccode\u003e83551ce\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4a2b5bd5c53afd98cc29f0e72bfdbf048e02ff17\"\u003e\u003ccode\u003e4a2b5bd\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/ad0a5a51caa709ec5bbaf549c404863eda619d90\"\u003e\u003ccode\u003ead0a5a5\u003c/code\u003e\u003c/a\u003e swagger-ui upgrade to version 5.32.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6e14cb4a0ead3306ded7dfd9a64d51132bb6761f\"\u003e\u003ccode\u003e6e14cb4\u003c/code\u003e\u003c/a\u003e Fix sonarqube errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/eae20564510fc1640e5098774dc96d6b976b3e46\"\u003e\u003ccode\u003eeae2056\u003c/code\u003e\u003c/a\u003e Fix sonarqube errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/b09a77bb6e4357498eec1743021a22c865374f1c\"\u003e\u003ccode\u003eb09a77b\u003c/code\u003e\u003c/a\u003e chore: act upon SonarQube warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/cc3d86d6f83f64e1fd76b14ec6de5c84d32227cc\"\u003e\u003ccode\u003ecc3d86d\u003c/code\u003e\u003c/a\u003e upgrade spring-ai to version 2.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df1c2ba12f9ef979c0afd1fd05f35d0901937bc5\"\u003e\u003ccode\u003edf1c2ba\u003c/code\u003e\u003c/a\u003e spring-boot upgrade to 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/b6e5212d8b7afea30f6fa9b95561633411d2148d\"\u003e\u003ccode\u003eb6e5212\u003c/code\u003e\u003c/a\u003e Kotlin parent class's field is not properly marked as nullable. Fixes \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3304\"\u003e#3304\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.6 to 4.0.9\n\nUpdates `org.freemarker:freemarker` from 2.3.34 to 2.3.35\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.2.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/719429d87e0d92615d67668cb3329b8dd1505b37\"\u003e\u003ccode\u003e719429d\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/d0b98774d055e546461f1a7c7da3f3bc5361a881\"\u003e\u003ccode\u003ed0b9877\u003c/code\u003e\u003c/a\u003e Prep for 3.2.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/e32f526099b197d4dfb54de78f61b6fb60d716f0\"\u003e\u003ccode\u003ee32f526\u003c/code\u003e\u003c/a\u003e Merge branch '3.1' into 3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/113f6a1c10d68bc7d5c68e3f32e460fb9ed3059d\"\u003e\u003ccode\u003e113f6a1\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/46176f6827827d1be11758b12cdfadac0bf15b6d\"\u003e\u003ccode\u003e46176f6\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-bom/commit/8b4a513d2b5a34079eaa358109d87fbc99639d78\"\u003e\u003ccode\u003e8b4a513\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/adeda6f6cf5e631ff7155a0cda3c56e8fc828a96\"\u003e\u003ccode\u003eadeda6f\u003c/code\u003e\u003c/a\u003e Prep for 3.1.6 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/c3a4debfa3d36192ea8a7ea4b54a698f46b025b8\"\u003e\u003ccode\u003ec3a4deb\u003c/code\u003e\u003c/a\u003e Merge branch '3.1' into 3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c74470ab201f11de73204a35abe38150640360b\"\u003e\u003ccode\u003e3c74470\u003c/code\u003e\u003c/a\u003e Merge branch '2.x' into 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/06416bab1a4a7258531eee9686b80c619bfecea6\"\u003e\u003ccode\u003e06416ba\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.gi...\n\n_Description has been truncated_","html_url":"https://github.com/cdome/ollumi/pull/74","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdome%2Follumi/issues/74","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/74/packages"}},{"old_version":"3.1.4","new_version":"3.3.5","update_type":"minor","path":"/transactional-event-core","pr_created_at":"2026-08-28T22:44:33.000Z","version_change":"3.1.4 → 3.3.5","issue":{"uuid":"5282886444","node_id":"PR_kwDOE25TVc8AAAABBZSKHQ","number":39,"state":"closed","title":"Bump org.mariadb.jdbc:mariadb-java-client from 3.1.4 to 3.3.5 in /transactional-event-core","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":"2026-08-30T20:56:54.000Z","author_association":null,"state_reason":null,"created_at":"2026-08-28T22:44:33.000Z","updated_at":"2026-08-30T20:57:02.000Z","time_to_close":166341,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.1.4","new_version":"3.3.5","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"}],"path":"/transactional-event-core","ecosystem":"maven"},"body":"Bumps [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) from 3.1.4 to 3.3.5.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.5\"\u003e3.3.5\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.4...3.3.5\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1259 DatabaseMetaData read-only detection: handle MariaDB 12.0 \u003ccode\u003e@@read_only\u003c/code\u003e returning \u003ccode\u003eON\u003c/code\u003e/\u003ccode\u003eOFF\u003c/code\u003e\ninstead of \u003ccode\u003e1\u003c/code\u003e/\u003ccode\u003e0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCONJ-1317 ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.3\"\u003e3.3.4\u003c/a\u003e (Mar 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.3...3.3.4\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1237 wrong statements.isClosed value after closing connection\u003c/li\u003e\n\u003cli\u003eCONJ-1236 ensure not having NPE after reconnection fail for high availability configurations\u003c/li\u003e\n\u003cli\u003eCONJ-1239 disable BULK use when there isn't any parameter\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.3\"\u003e3.3.3\u003c/a\u003e (Feb 2024)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.2...3.3.3\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1050 regression in 3.x.y: nonparameterized batch \u0026quot;INSERT INTO products( name ) VALUES ( 'aaaa' )\u0026quot; fails\u003c/li\u003e\n\u003cli\u003eCONJ-1150 Error using PrepareStatement.setURL with null url\u003c/li\u003e\n\u003cli\u003eCONJ-1152 Improve message when reaching socket timeout during connection initial commands\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.2\"\u003e3.3.2\u003c/a\u003e (Dec 2023)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.1...3.3.2\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1117 new option \u003ccode\u003ereturnMultiValuesGeneratedIds\u003c/code\u003e for connector 2.x compatibility, so getGeneratedKeys() return all\nids of multi-value inserts\u003c/li\u003e\n\u003cli\u003eCONJ-1140 regression caussing ClassCastException on DatabaseMetaData when use with option defaultFetchSize set\u003c/li\u003e\n\u003cli\u003eCONJ-1129 Metadata.getPrimaryKeys table comparison using like in place of strict equality\u003c/li\u003e\n\u003cli\u003eCONJ-1130 ensuring batch parameter are cleared after SQL Failure\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- 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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.5\"\u003e3.3.5\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.4...3.3.5\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1259 - DatabaseMetaData read-only detection: handle MariaDB 12.0 \u003ccode\u003e@@read_only\u003c/code\u003e returning \u003ccode\u003eON\u003c/code\u003e/\u003ccode\u003eOFF\u003c/code\u003e\ninstead of \u003ccode\u003e1\u003c/code\u003e/\u003ccode\u003e0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 - LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - allowLocalInfile=false does not block LOAD DATA LOCAL INFILE against a malicious server (thanks to tharavel)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/2.7.14\"\u003e2.7.14\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/2.7.13...2.7.14\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites (fixes locale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003ecreate gssapi jaas config temp file with owner-only permissions (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eencode caching_sha2 clear password as UTF-8 (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003ecall inflater.end() in finally in CompressInputStream (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - allowLocalInfile=false does not block LOAD DATA LOCAL INFILE against a malicious server (thanks to tharavel)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.7\"\u003e3.5.7\u003c/a\u003e (Dec 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.6...3.5.7\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/f522a2f560c6e07d1d4b9a7957ed31bc57038af4\"\u003e\u003ccode\u003ef522a2f\u003c/code\u003e\u003c/a\u003e [misc] change maven oss to central since oss is now deprecated\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/e7727e2896b49a96687d14f916a0ad97d3aac01b\"\u003e\u003ccode\u003ee7727e2\u003c/code\u003e\u003c/a\u003e [misc] update CHANGELOG for 3.3.5: add bug fixes for CONJ-1322 and CONJ-1323\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/65b28c6d8330a5ddcd9d823b87381c9f73eea676\"\u003e\u003ccode\u003e65b28c6\u003c/code\u003e\u003c/a\u003e match local infile filename case-sensitively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/76d03ab41468d3e3a3fed916c64d6f3a6e7e1c5a\"\u003e\u003ccode\u003e76d03ab\u003c/code\u003e\u003c/a\u003e [misc] fix RedoContextTest compilation against 3.x API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/b929257556eeed3d6a6751a783f9b988aefd2c00\"\u003e\u003ccode\u003eb929257\u003c/code\u003e\u003c/a\u003e bump 3.3.5 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/0ede8eda2f96a95e41942b2004a19bca624acb79\"\u003e\u003ccode\u003e0ede8ed\u003c/code\u003e\u003c/a\u003e [misc] update license header to 2026\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/098543024a49d12879e8106b92be20a3ae19f1c7\"\u003e\u003ccode\u003e0985430\u003c/code\u003e\u003c/a\u003e [misc] use literal -- instead of [-] in LOAD LOCAL INFILE comment regex\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/eabb007536d05041aa6b0874f57a07a1490d6d3c\"\u003e\u003ccode\u003eeabb007\u003c/code\u003e\u003c/a\u003e Fix: replace [--] with [-] in LOAD LOCAL INFILE regex patterns\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/87fe3d2a09870a5737b2a4daa7668ad9d80c5494\"\u003e\u003ccode\u003e87fe3d2\u003c/code\u003e\u003c/a\u003e encode caching_sha2 clear password as UTF-8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/39bd9d1c2dac3fae6d50dbc8525387acd64a041e\"\u003e\u003ccode\u003e39bd9d1\u003c/code\u003e\u003c/a\u003e [misc] only buffer in-transaction statements for transaction replay\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.1.4...3.3.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/jonasrutishauser/transactional-event/pull/39","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonasrutishauser%2Ftransactional-event/issues/39","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/39/packages"}},{"old_version":"3.0.5","new_version":"3.3.5","update_type":"minor","path":"/Logger-Velocity","pr_created_at":"2026-08-28T22:44:21.000Z","version_change":"3.0.5 → 3.3.5","issue":{"uuid":"5282885211","node_id":"PR_kwDOF4uQ4c8AAAABBZSF8w","number":69,"state":"closed","title":"Bump org.mariadb.jdbc:mariadb-java-client from 3.0.5 to 3.3.5 in /Logger-Velocity","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-09-04T21:48:15.000Z","author_association":null,"state_reason":null,"created_at":"2026-08-28T22:44:21.000Z","updated_at":"2026-09-04T21:48:17.000Z","time_to_close":601434,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.0.5","new_version":"3.3.5","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"}],"path":"/Logger-Velocity","ecosystem":"maven"},"body":"Bumps [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) from 3.0.5 to 3.3.5.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.5\"\u003e3.3.5\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.4...3.3.5\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1259 DatabaseMetaData read-only detection: handle MariaDB 12.0 \u003ccode\u003e@@read_only\u003c/code\u003e returning \u003ccode\u003eON\u003c/code\u003e/\u003ccode\u003eOFF\u003c/code\u003e\ninstead of \u003ccode\u003e1\u003c/code\u003e/\u003ccode\u003e0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCONJ-1317 ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.3\"\u003e3.3.4\u003c/a\u003e (Mar 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.3...3.3.4\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1237 wrong statements.isClosed value after closing connection\u003c/li\u003e\n\u003cli\u003eCONJ-1236 ensure not having NPE after reconnection fail for high availability configurations\u003c/li\u003e\n\u003cli\u003eCONJ-1239 disable BULK use when there isn't any parameter\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.3\"\u003e3.3.3\u003c/a\u003e (Feb 2024)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.2...3.3.3\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1050 regression in 3.x.y: nonparameterized batch \u0026quot;INSERT INTO products( name ) VALUES ( 'aaaa' )\u0026quot; fails\u003c/li\u003e\n\u003cli\u003eCONJ-1150 Error using PrepareStatement.setURL with null url\u003c/li\u003e\n\u003cli\u003eCONJ-1152 Improve message when reaching socket timeout during connection initial commands\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.3.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.2\"\u003e3.3.2\u003c/a\u003e (Dec 2023)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.1...3.3.2\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1117 new option \u003ccode\u003ereturnMultiValuesGeneratedIds\u003c/code\u003e for connector 2.x compatibility, so getGeneratedKeys() return all\nids of multi-value inserts\u003c/li\u003e\n\u003cli\u003eCONJ-1140 regression caussing ClassCastException on DatabaseMetaData when use with option defaultFetchSize set\u003c/li\u003e\n\u003cli\u003eCONJ-1129 Metadata.getPrimaryKeys table comparison using like in place of strict equality\u003c/li\u003e\n\u003cli\u003eCONJ-1130 ensuring batch parameter are cleared after SQL Failure\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- 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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.5\"\u003e3.3.5\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.3.4...3.3.5\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1259 - DatabaseMetaData read-only detection: handle MariaDB 12.0 \u003ccode\u003e@@read_only\u003c/code\u003e returning \u003ccode\u003eON\u003c/code\u003e/\u003ccode\u003eOFF\u003c/code\u003e\ninstead of \u003ccode\u003e1\u003c/code\u003e/\u003ccode\u003e0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 - LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - allowLocalInfile=false does not block LOAD DATA LOCAL INFILE against a malicious server (thanks to tharavel)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/2.7.14\"\u003e2.7.14\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/2.7.13...2.7.14\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites (fixes locale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003ecreate gssapi jaas config temp file with owner-only permissions (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eencode caching_sha2 clear password as UTF-8 (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003ecall inflater.end() in finally in CompressInputStream (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - allowLocalInfile=false does not block LOAD DATA LOCAL INFILE against a malicious server (thanks to tharavel)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.7\"\u003e3.5.7\u003c/a\u003e (Dec 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.6...3.5.7\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/f522a2f560c6e07d1d4b9a7957ed31bc57038af4\"\u003e\u003ccode\u003ef522a2f\u003c/code\u003e\u003c/a\u003e [misc] change maven oss to central since oss is now deprecated\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/e7727e2896b49a96687d14f916a0ad97d3aac01b\"\u003e\u003ccode\u003ee7727e2\u003c/code\u003e\u003c/a\u003e [misc] update CHANGELOG for 3.3.5: add bug fixes for CONJ-1322 and CONJ-1323\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/65b28c6d8330a5ddcd9d823b87381c9f73eea676\"\u003e\u003ccode\u003e65b28c6\u003c/code\u003e\u003c/a\u003e match local infile filename case-sensitively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/76d03ab41468d3e3a3fed916c64d6f3a6e7e1c5a\"\u003e\u003ccode\u003e76d03ab\u003c/code\u003e\u003c/a\u003e [misc] fix RedoContextTest compilation against 3.x API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/b929257556eeed3d6a6751a783f9b988aefd2c00\"\u003e\u003ccode\u003eb929257\u003c/code\u003e\u003c/a\u003e bump 3.3.5 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/0ede8eda2f96a95e41942b2004a19bca624acb79\"\u003e\u003ccode\u003e0ede8ed\u003c/code\u003e\u003c/a\u003e [misc] update license header to 2026\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/098543024a49d12879e8106b92be20a3ae19f1c7\"\u003e\u003ccode\u003e0985430\u003c/code\u003e\u003c/a\u003e [misc] use literal -- instead of [-] in LOAD LOCAL INFILE comment regex\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/eabb007536d05041aa6b0874f57a07a1490d6d3c\"\u003e\u003ccode\u003eeabb007\u003c/code\u003e\u003c/a\u003e Fix: replace [--] with [-] in LOAD LOCAL INFILE regex patterns\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/87fe3d2a09870a5737b2a4daa7668ad9d80c5494\"\u003e\u003ccode\u003e87fe3d2\u003c/code\u003e\u003c/a\u003e encode caching_sha2 clear password as UTF-8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/39bd9d1c2dac3fae6d50dbc8525387acd64a041e\"\u003e\u003ccode\u003e39bd9d1\u003c/code\u003e\u003c/a\u003e [misc] only buffer in-transaction statements for transaction replay\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.0.5...3.3.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.mariadb.jdbc:mariadb-java-client\u0026package-manager=maven\u0026previous-version=3.0.5\u0026new-version=3.3.5)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\nYou can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/ExceptedPrism3/Logger/network/alerts).\n\n\u003c/details\u003e","html_url":"https://github.com/ExceptedPrism3/Logger/pull/69","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ExceptedPrism3%2FLogger/issues/69","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/69/packages"}},{"old_version":"3.5.9","new_version":"3.5.10","update_type":"patch","path":null,"pr_created_at":"2026-08-24T11:18:45.000Z","version_change":"3.5.9 → 3.5.10","issue":{"uuid":"5234116539","node_id":"PR_kwDOAB81F88AAAABAyfPNw","number":15655,"state":"open","title":"[12.0.x EE8] Bump the dev-dependencies group across 1 directory with 22 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-08-24T11:18:45.000Z","updated_at":"2026-09-01T08:45:35.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[12.0.x EE8] Bump","group_name":"dev-dependencies","update_count":22,"packages":[{"name":"org.codehaus.plexus:plexus-xml","old_version":"4.1.1","new_version":"4.2.0","repository_url":"https://github.com/codehaus-plexus/plexus-xml"},{"name":"org.conscrypt:conscrypt-openjdk-uber","old_version":"2.6.0","new_version":"2.6.3","repository_url":"https://github.com/google/conscrypt"},{"name":"com.fasterxml.jackson:jackson-bom","old_version":"2.22.1","new_version":"2.22.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"io.netty:netty-bom","old_version":"4.2.16.Final","new_version":"4.2.17.Final","repository_url":"https://github.com/netty/netty"},{"name":"ch.qos.logback:logback-core","old_version":"1.5.38","new_version":"1.6.3","repository_url":"https://github.com/qos-ch/logback"},{"name":"com.google.guava:guava","old_version":"33.6.0-jre","new_version":"33.7.1-jre","repository_url":"https://github.com/google/guava"},{"name":"commons-codec:commons-codec","old_version":"1.22.0","new_version":"1.22.1","repository_url":"https://github.com/apache/commons-codec"},{"name":"io.grpc:grpc-core","old_version":"1.82.2","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc-java"},{"name":"io.grpc:grpc-netty-shaded","old_version":"1.82.2","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc-java"},{"name":"io.smallrye.common:smallrye-common-annotation","old_version":"2.19.0","new_version":"2.20.0","repository_url":"https://github.com/smallrye/smallrye-common"},{"name":"io.smallrye.common:smallrye-common-cpu","old_version":"2.19.0","new_version":"2.20.0","repository_url":"https://github.com/smallrye/smallrye-common"},{"name":"org.bouncycastle:bctls-jdk18on","old_version":"1.84","new_version":"1.85","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.codehaus.plexus:plexus-classworlds","old_version":"2.12.0","new_version":"2.12.1","repository_url":"https://github.com/codehaus-plexus/plexus-classworlds"},{"name":"org.codehaus.plexus:plexus-utils","old_version":"4.0.3","new_version":"4.1.0","repository_url":"https://github.com/codehaus-plexus/plexus-utils"},{"name":"org.eclipse.sisu:org.eclipse.sisu.inject","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/eclipse-sisu/sisu-project"},{"name":"org.eclipse.sisu:org.eclipse.sisu.plexus","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/eclipse-sisu/sisu-project"},{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.9","new_version":"3.5.10","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.eclipse.jetty.toolchain:jetty-build-support","old_version":"1.5","new_version":"1.6"},{"name":"eu.maveniverse.maven.njord:extension3","old_version":"0.9.9","new_version":"0.9.10","repository_url":"https://github.com/maveniverse/njord"},{"name":"eu.maveniverse.maven.plugins:njord","old_version":"0.9.9","new_version":"0.9.10","repository_url":"https://github.com/maveniverse/njord"},{"name":"org.apache.maven.extensions:maven-build-cache-extension","old_version":"1.2.3","new_version":"1.3.0","repository_url":"https://github.com/apache/maven-build-cache-extension"},{"name":"org.cyclonedx:cyclonedx-maven-plugin","old_version":"2.9.2","new_version":"2.9.3","repository_url":"https://github.com/CycloneDX/cyclonedx-maven-plugin"}],"path":null,"ecosystem":"maven"},"body":"[//]: # (dependabot-start)\n⚠️  **Dependabot is rebasing this PR** ⚠️ \n\nRebasing might not happen immediately, so don't worry if this takes some time.\n\nNote: if you make any changes to this PR yourself, they will take precedence over the rebase.\n\n---\n\n[//]: # (dependabot-end)\n\nBumps the dev-dependencies group with 22 updates in the /jetty-ee8 directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.codehaus.plexus:plexus-xml](https://github.com/codehaus-plexus/plexus-xml) | `4.1.1` | `4.2.0` |\n| [org.conscrypt:conscrypt-openjdk-uber](https://github.com/google/conscrypt) | `2.6.0` | `2.6.3` |\n| [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `2.22.1` | `2.22.2` |\n| [io.netty:netty-bom](https://github.com/netty/netty) | `4.2.16.Final` | `4.2.17.Final` |\n| [ch.qos.logback:logback-core](https://github.com/qos-ch/logback) | `1.5.38` | `1.6.3` |\n| [com.google.guava:guava](https://github.com/google/guava) | `33.6.0-jre` | `33.7.1-jre` |\n| [commons-codec:commons-codec](https://github.com/apache/commons-codec) | `1.22.0` | `1.22.1` |\n| [io.grpc:grpc-core](https://github.com/grpc/grpc-java) | `1.82.2` | `1.83.1` |\n| [io.grpc:grpc-netty-shaded](https://github.com/grpc/grpc-java) | `1.82.2` | `1.83.1` |\n| [io.smallrye.common:smallrye-common-annotation](https://github.com/smallrye/smallrye-common) | `2.19.0` | `2.20.0` |\n| [io.smallrye.common:smallrye-common-cpu](https://github.com/smallrye/smallrye-common) | `2.19.0` | `2.20.0` |\n| [org.bouncycastle:bctls-jdk18on](https://github.com/bcgit/bc-java) | `1.84` | `1.85` |\n| [org.codehaus.plexus:plexus-classworlds](https://github.com/codehaus-plexus/plexus-classworlds) | `2.12.0` | `2.12.1` |\n| [org.codehaus.plexus:plexus-utils](https://github.com/codehaus-plexus/plexus-utils) | `4.0.3` | `4.1.0` |\n| [org.eclipse.sisu:org.eclipse.sisu.inject](https://github.com/eclipse-sisu/sisu-project) | `1.0.1` | `1.1.0` |\n| [org.eclipse.sisu:org.eclipse.sisu.plexus](https://github.com/eclipse-sisu/sisu-project) | `1.0.1` | `1.1.0` |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.9` | `3.5.10` |\n| org.eclipse.jetty.toolchain:jetty-build-support | `1.5` | `1.6` |\n| [eu.maveniverse.maven.njord:extension3](https://github.com/maveniverse/njord) | `0.9.9` | `0.9.10` |\n| [eu.maveniverse.maven.plugins:njord](https://github.com/maveniverse/njord) | `0.9.9` | `0.9.10` |\n| [org.apache.maven.extensions:maven-build-cache-extension](https://github.com/apache/maven-build-cache-extension) | `1.2.3` | `1.3.0` |\n| [org.cyclonedx:cyclonedx-maven-plugin](https://github.com/CycloneDX/cyclonedx-maven-plugin) | `2.9.2` | `2.9.3` |\n\n\nUpdates `org.codehaus.plexus:plexus-xml` from 4.1.1 to 4.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/releases\"\u003eorg.codehaus.plexus:plexus-xml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.2.0\u003c/h2\u003e\n\u003cp\u003eThe 4.x line no longer builds its DOM through Maven's deprecated \u003ccode\u003eXmlNodeBuilder\u003c/code\u003e: \u003ccode\u003eXpp3DomBuilder\u003c/code\u003e uses a pull builder of its own, so a future Maven can delete that class without breaking this one. The artifact also carries \u003ccode\u003eAutomatic-Module-Name: org.codehaus.plexus.util.xml\u003c/code\u003e, which anyone on the module path sees.\u003c/p\u003e\n\u003cp\u003eThe Maven dependency is split: \u003ccode\u003emaven-api-xml\u003c/code\u003e at compile, \u003ccode\u003emaven-xml\u003c/code\u003e at runtime, since \u003ccode\u003eXmlService\u003c/code\u003e resolves its implementation through \u003ccode\u003eServiceLoader\u003c/code\u003e. Consumers keep the API transitively and lose \u003ccode\u003eorg.apache.maven.internal.*\u003c/code\u003e along with woodstox-core and stax2-api.\u003c/p\u003e\n\u003cp\u003eRequires Java 17 and Maven 4. On Maven 3, use the 3.x line.\u003c/p\u003e\n\u003ch2\u003e🚀 New features and improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEstablish an automatic module name (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/92\"\u003e#92\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild the DOM with a local pull builder instead of Maven's deprecated XmlNodeBuilder (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/94\"\u003e#94\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📝 Documentation updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRewrite README with usage, status and version guidance (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/88\"\u003e#88\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e👻 Maintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSet the next development version to 4.2.0-SNAPSHOT (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/97\"\u003e#97\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild against maven-xml 4.0.0-rc-6 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/87\"\u003e#87\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove deprecated XmlNode references (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/81\"\u003e#81\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔧 Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate parent to plexus 27 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/99\"\u003e#99\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📦 Dependency updates\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDepend on maven-api-xml at compile and maven-xml at runtime (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/96\"\u003e#96\u003c/a\u003e) \u003ca href=\"https://github.com/slachiewicz\"\u003e\u003ccode\u003e@​slachiewicz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump org.codehaus.plexus:plexus from 25 to 26 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/90\"\u003e#90\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump release-drafter/release-drafter from 7.6.0 to 7.7.0 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/86\"\u003e#86\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump release-drafter/release-drafter from 7 to 7.6.0 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/84\"\u003e#84\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump release-drafter/release-drafter from 6 to 7 (\u003ca href=\"https://redirect.github.com/codehaus-plexus/plexus-xml/pull/79\"\u003e#79\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\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/codehaus-plexus/plexus-xml/commit/215f435589f545e3c6bb840513f45a952709fb5a\"\u003e\u003ccode\u003e215f435\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release plexus-xml-4.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/ce5d0624363998ebfc398f55672921552d7578ae\"\u003e\u003ccode\u003ece5d062\u003c/code\u003e\u003c/a\u003e Update parent to plexus 27\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/38c200b943a3109066ea3a18001ab8f1e11d4ee3\"\u003e\u003ccode\u003e38c200b\u003c/code\u003e\u003c/a\u003e Depend on maven-api-xml at compile and maven-xml at runtime\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/ae27358905fc4eb0fb28a6b10ea2a0cbb566c966\"\u003e\u003ccode\u003eae27358\u003c/code\u003e\u003c/a\u003e Set the next development version to 4.2.0-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/d1c51ce927244d359ed7aeb86ef809c0e77205cb\"\u003e\u003ccode\u003ed1c51ce\u003c/code\u003e\u003c/a\u003e Establish an automatic module name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/d0f198be29880b2124560a72f4a7684ceb5d24f8\"\u003e\u003ccode\u003ed0f198b\u003c/code\u003e\u003c/a\u003e Build the DOM with a local pull builder, not Maven's XmlNodeBuilder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/470396adc7ca98a41b00b45ea908d6941ebe6ae3\"\u003e\u003ccode\u003e470396a\u003c/code\u003e\u003c/a\u003e Bump org.codehaus.plexus:plexus from 25 to 26\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/51d60d59faff0fde7d6fe75986909819fb45f0e3\"\u003e\u003ccode\u003e51d60d5\u003c/code\u003e\u003c/a\u003e Rewrite README with usage, status and version guidance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/e91d180a097e8777450d6cfba5cc0c4c3fd3226c\"\u003e\u003ccode\u003ee91d180\u003c/code\u003e\u003c/a\u003e Bump release-drafter/release-drafter from 7.6.0 to 7.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/commit/b628bf3a4e89d939808f90eb1fd431f039ef5d18\"\u003e\u003ccode\u003eb628bf3\u003c/code\u003e\u003c/a\u003e Build against maven-xml 4.0.0-rc-6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/codehaus-plexus/plexus-xml/compare/plexus-xml-4.1.1...plexus-xml-4.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.conscrypt:conscrypt-openjdk-uber` from 2.6.0 to 2.6.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/google/conscrypt/releases\"\u003eorg.conscrypt:conscrypt-openjdk-uber's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.6.3\u003c/h2\u003e\n\u003cp\u003eThis release uses the same Conscrypt source code as release 2.6.2, but the maven binary was compiled with this boringssl version:\n\u003ca href=\"https://boringssl.googlesource.com/boringssl/+/refs/tags/0.20260616.0\"\u003ehttps://boringssl.googlesource.com/boringssl/+/refs/tags/0.20260616.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis should fix \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1530\"\u003egoogle/conscrypt#1530\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.6.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1526\"\u003egoogle/conscrypt#1526\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNow only requires GLIBC_2.14, which fixes \u003ca href=\"https://redirect.github.com/robolectric/robolectric/issues/11362\"\u003erobolectric/robolectric#11362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.6.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1519\"\u003egoogle/conscrypt#1519\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1499#issuecomment-4923001123\"\u003egoogle/conscrypt#1499\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/google/conscrypt/commit/657e1c64c46961bcc48e7302e42ebc02d6632645\"\u003e\u003ccode\u003e657e1c6\u003c/code\u003e\u003c/a\u003e Use an Ubuntu 20.04 container to build Concrypt on GitHub CI, and make Make a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/44a36308a64e3f872192baabd7c3b5819dc618a2\"\u003e\u003ccode\u003e44a3630\u003c/code\u003e\u003c/a\u003e Close contexts after each test in SSLEngineVersionCompatibilityTest. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1524\"\u003e#1524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/5bdcae0fe8aeb92009eba087969aed7f0ae0e167\"\u003e\u003ccode\u003e5bdcae0\u003c/code\u003e\u003c/a\u003e Project import generated by Copybara. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1523\"\u003e#1523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/6135d6016b052477efe689fd98e5fca9b5325eed\"\u003e\u003ccode\u003e6135d60\u003c/code\u003e\u003c/a\u003e Project import generated by Copybara. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1522\"\u003e#1522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/google/conscrypt/compare/2.6.0...2.6.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.22.1 to 2.22.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/062d76d67a3619238e00d4d62f9bdb51cfe6cd52\"\u003e\u003ccode\u003e062d76d\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/dcf18f79fa8a9b935d880b3906291d8ed8cb1d0d\"\u003e\u003ccode\u003edcf18f7\u003c/code\u003e\u003c/a\u003e Prep for 2.22.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/9688c7b1dfc9072fdec7c9770653072d0a728fd1\"\u003e\u003ccode\u003e9688c7b\u003c/code\u003e\u003c/a\u003e Merge branch '2.21' into 2.22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7796a7ddb240ce41c1b6c6a3a435b29948a6a727\"\u003e\u003ccode\u003e7796a7d\u003c/code\u003e\u003c/a\u003e Merge branch '2.20' into 2.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/d3cd7fc1794f6d1a9f0a4dee41d8d46a310741d7\"\u003e\u003ccode\u003ed3cd7fc\u003c/code\u003e\u003c/a\u003e Merge branch '2.19' into 2.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7a28068902087b3c407d2dcabd875d7593127d97\"\u003e\u003ccode\u003e7a28068\u003c/code\u003e\u003c/a\u003e Merge branch '2.18' into 2.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/51eb4657b141f598bb285763ac42492bd23a1da3\"\u003e\u003ccode\u003e51eb465\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/34ff5e8c68b0712086794b8287d0ad643a0a1993\"\u003e\u003ccode\u003e34ff5e8\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-bom/commit/0b44a458b999c5ac5568e2a4b1190a7d1080038e\"\u003e\u003ccode\u003e0b44a45\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.18.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/691ec93ce7c1fcc582a2a44348e82e91ca424098\"\u003e\u003ccode\u003e691ec93\u003c/code\u003e\u003c/a\u003e Prep for 2.18.10 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.22.1...jackson-bom-2.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.netty:netty-bom` from 4.2.16.Final to 4.2.17.Final\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/netty/netty/releases\"\u003eio.netty:netty-bom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enetty-4.2.17.Final\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAsciiString.cached(String) should sanitize the provided String (\u003ca href=\"https://redirect.github.com/netty/netty/issues/13749\"\u003e#13749\u003c/a\u003e) by \u003ca href=\"https://github.com/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17007\"\u003enetty/netty#17007\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deploy workflow by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17071\"\u003enetty/netty#17071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix AsciiString.cached(String) performance regression by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17074\"\u003enetty/netty#17074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSslHandler: Fix possible buffer leak when an OOME is thrown during allocation by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17059\"\u003enetty/netty#17059\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leak presence detector in leak profile by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17073\"\u003enetty/netty#17073\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd HttpContentCompressor constructor with ability to specify desired maxPipelineDepth by \u003ca href=\"https://github.com/reta\"\u003e\u003ccode\u003e@​reta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17068\"\u003enetty/netty#17068\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: preserve readPending when rescheduling cancelled reads by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17087\"\u003enetty/netty#17087\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject negative maxOrder in PooledByteBufAllocator by \u003ca href=\"https://github.com/coderbruis\"\u003e\u003ccode\u003e@​coderbruis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17093\"\u003enetty/netty#17093\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix AdaptiveByteBuf._setLongLE calling checked setLongLE by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17098\"\u003enetty/netty#17098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSnappy: Guard decoder against invalid chunk lengths by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17099\"\u003enetty/netty#17099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix OCSP Tests by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17114\"\u003enetty/netty#17114\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate to latest netty-tcnative release by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17056\"\u003enetty/netty#17056\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse safe decompressor in Lz4FrameDecoder by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17118\"\u003enetty/netty#17118\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConfigure TestLens for the PR builds by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17129\"\u003enetty/netty#17129\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: add SO_INQ support for Unix domain sockets by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17127\"\u003enetty/netty#17127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(mqtt): drop UNSUBACK reason codes for MQTT 3.x encoding by \u003ca href=\"https://github.com/ChunMengLu\"\u003e\u003ccode\u003e@​ChunMengLu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17117\"\u003enetty/netty#17117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePropagate the CI envionment variables through to the docker builds by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17138\"\u003enetty/netty#17138\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add decompressor API by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16745\"\u003enetty/netty#16745\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix silent failures and optimize error short-circuit in multi-threaded tests by \u003ca href=\"https://github.com/rajan-github\"\u003e\u003ccode\u003e@​rajan-github\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17106\"\u003enetty/netty#17106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Bzip2Decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17145\"\u003enetty/netty#17145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix buddy cache evicting chunks with live buffers by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17154\"\u003enetty/netty#17154\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Snappy frame decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17153\"\u003enetty/netty#17153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add zlib decompressors by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17155\"\u003enetty/netty#17155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Zstd decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17152\"\u003enetty/netty#17152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add LZF decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17147\"\u003enetty/netty#17147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add BrotliDecompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17146\"\u003enetty/netty#17146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Lz4FrameDecompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17148\"\u003enetty/netty#17148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eHttpObjectEncoder\u003c/code\u003e / \u003ccode\u003eDefaultHttp2FrameWriter\u003c/code\u003e: fix buffer leak when a \u003ccode\u003eThrowable\u003c/code\u003e is thrown during header encoding by \u003ca href=\"https://github.com/HwangRock\"\u003e\u003ccode\u003e@​HwangRock\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17089\"\u003enetty/netty#17089\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix direct memory OOM on low-core containers by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17166\"\u003enetty/netty#17166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: Fix the recvmmsg emulation by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17187\"\u003enetty/netty#17187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid classloader leak via GlobalEventExecutor terminationFuture failure by \u003ca href=\"https://github.com/seonwooj0810\"\u003e\u003ccode\u003e@​seonwooj0810\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17140\"\u003enetty/netty#17140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBrotliEncoder: Prevent duplicate close scheduling by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17175\"\u003enetty/netty#17175\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix JdkZlibDecompressor losing the tail of highly compressible streams by \u003ca href=\"https://github.com/renechoi\"\u003e\u003ccode\u003e@​renechoi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17191\"\u003enetty/netty#17191\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate compress-lzf to 1.2.1 by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17194\"\u003enetty/netty#17194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not write WebSocket handshake response to the tail of the pipeline by \u003ca href=\"https://github.com/el-psy-kongroo-d\"\u003e\u003ccode\u003e@​el-psy-kongroo-d\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17192\"\u003enetty/netty#17192\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eHttpServerCodec\u003c/code\u003e: do not consume the method queue for 1xx interim responses by \u003ca href=\"https://github.com/HwangRock\"\u003e\u003ccode\u003e@​HwangRock\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17182\"\u003enetty/netty#17182\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWeakly reference engines from the OpenSSL engine map by \u003ca href=\"https://github.com/bryce-anderson\"\u003e\u003ccode\u003e@​bryce-anderson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17199\"\u003enetty/netty#17199\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOpenSSL: Allow to obtain used named group via OpenSslSession by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17058\"\u003enetty/netty#17058\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.editorconfig\u003c/code\u003e to enforce consistent coding style by \u003ca href=\"https://github.com/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17052\"\u003enetty/netty#17052\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate surefire plugin to latest version by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17210\"\u003enetty/netty#17210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMerge changes from forks by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17213\"\u003enetty/netty#17213\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/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17007\"\u003enetty/netty#17007\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ChunMengLu\"\u003e\u003ccode\u003e@​ChunMengLu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17117\"\u003enetty/netty#17117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rajan-github\"\u003e\u003ccode\u003e@​rajan-github\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17106\"\u003enetty/netty#17106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seonwooj0810\"\u003e\u003ccode\u003e@​seonwooj0810\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17140\"\u003enetty/netty#17140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/renechoi\"\u003e\u003ccode\u003e@​renechoi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17191\"\u003enetty/netty#17191\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/netty/netty/commit/e0789d32c72f46fd2e7c99b6fdbbf7e2f4409e44\"\u003e\u003ccode\u003ee0789d3\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release netty-4.2.17.Final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/1b5abc6443b63726c72cdd285af2feb7ddbb8ff7\"\u003e\u003ccode\u003e1b5abc6\u003c/code\u003e\u003c/a\u003e Merge changes from forks (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17213\"\u003e#17213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/36fbf5788c73e7040e6f18fed841a2cdfcae1452\"\u003e\u003ccode\u003e36fbf57\u003c/code\u003e\u003c/a\u003e Update surefire plugin to latest version (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17210\"\u003e#17210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/a96226cb54e87e963e1e341cd7121f2217fc7c2e\"\u003e\u003ccode\u003ea96226c\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e.editorconfig\u003c/code\u003e to enforce consistent coding style (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17052\"\u003e#17052\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/14a4e6ad865a187c3f1bf0da18d9146472e18192\"\u003e\u003ccode\u003e14a4e6a\u003c/code\u003e\u003c/a\u003e OpenSSL: Allow to obtain used named group via OpenSslSession (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17058\"\u003e#17058\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/26255b123f7c699cd88cbdb42f6ecc6ed5cb7843\"\u003e\u003ccode\u003e26255b1\u003c/code\u003e\u003c/a\u003e Weakly reference engines from the OpenSSL engine map (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17199\"\u003e#17199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/ae414179e3a030e0747fb68648ff2433fa4539e1\"\u003e\u003ccode\u003eae41417\u003c/code\u003e\u003c/a\u003e \u003ccode\u003eHttpServerCodec\u003c/code\u003e: do not consume the method queue for 1xx interim responses ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/41f1db523d3657954e9ad12250004cbdfde2a97d\"\u003e\u003ccode\u003e41f1db5\u003c/code\u003e\u003c/a\u003e Do not write WebSocket handshake response to the tail of the pipeline (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17192\"\u003e#17192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/035d76e3f43fa462e101c1e03b59a69984c5ebf3\"\u003e\u003ccode\u003e035d76e\u003c/code\u003e\u003c/a\u003e Update compress-lzf to 1.2.1 (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17194\"\u003e#17194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/7681affcf120fca1de8554095216ddea20b408c5\"\u003e\u003ccode\u003e7681aff\u003c/code\u003e\u003c/a\u003e Fix JdkZlibDecompressor losing the tail of highly compressible streams (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17191\"\u003e#17191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.16.Final...netty-4.2.17.Final\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ch.qos.logback:logback-core` from 1.5.38 to 1.6.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qos-ch/logback/releases\"\u003ech.qos.logback:logback-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eLogback 1.6.3\u003c/h2\u003e\n\u003ch1\u003e2026-08-14 Release of logback version 1.6.3\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eIn response \u003ca href=\"https://www.cve.org/cverecord?id=CVE-2026-19880\"\u003eCVE-2026-19880\u003c/a\u003e,  \u003ccode\u003eMDCBasedDiscriminator\u003c/code\u003e (used by \u003ccode\u003eSiftingAppender\u003c/code\u003e) now strips forward and  backward slashes (\u003ccode\u003e/\u003c/code\u003e, \u003ccode\u003e\\\u003c/code\u003e) from MDC values before they are used as  discriminating keys. This prevents path segments from escaping into  destinations controlled by an attacker. When sanitisation actually changes a  value, a warning is emitted; the warning is rate-limited (a small batch, then  a lull of about ten minutes).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eColour console support is split out into a dedicated  \u003ca href=\"https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender\"\u003e\u003ccode\u003eJansiConsoleAppender\u003c/code\u003e\u003c/a\u003e. It wraps stdout or stderr with  Jansi so ANSI escape sequences (for example coloured patterns) render  correctly on terminals that need it, notably Windows. Prefer this class over  the older path described next. See the  \u003ca href=\"https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender\"\u003eappenders documentation\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe \u003ccode\u003ewithJansi\u003c/code\u003e property on \u003ccode\u003eConsoleAppender\u003c/code\u003e is \u003cstrong\u003edeprecated\u003c/strong\u003e. Existing  configurations that still set \u003ccode\u003e\u0026lt;withJansi\u0026gt;true\u0026lt;/withJansi\u0026gt;\u003c/code\u003e continue to work  for compatibility, but new setups should use \u003ccode\u003eJansiConsoleAppender\u003c/code\u003e instead.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eConsoleAppender\u003c/code\u003e no longer treats the process console as an exclusive  resource: stopping it does not close \u003ccode\u003eSystem.out\u003c/code\u003e / \u003ccode\u003eSystem.err\u003c/code\u003e.  \u003ccode\u003eJansiConsoleAppender\u003c/code\u003e pairs each \u003ccode\u003eAnsiConsole.systemInstall()\u003c/code\u003e with  \u003ccode\u003esystemUninstall()\u003c/code\u003e on stop, so repeated start/stop cycles do not leave Jansi  installed or tear down streams shared with the rest of the JVM. Related  behavior is covered by tests for  \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1063\"\u003eissues/1063\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eInvocation throttling helpers were reworked: \u003ccode\u003eSimpleInvocationGate\u003c/code\u003e is renamed  \u003ccode\u003eFixedIntervalInvocationGate\u003c/code\u003e, and \u003ccode\u003eBatchedFixedIntervalInvocationGate\u003c/code\u003e allows  a short burst of invocations before applying a fixed lull. The sanitisation\nwarning above uses the batched gate.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe JPMS \u003ccode\u003emodule-info\u003c/code\u003e for logback-core now exports the  \u003ccode\u003ech.qos.logback.core.property\u003c/code\u003e package, which had been missing from the module   descriptor.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eA bit-wise identical binary of this version can be reproduced by building from  \u003ca href=\"https://github.com/qos-ch/logback\"\u003esource code\u003c/a\u003e at commit  \u003ccode\u003ee8e824dede022a6d7208b36cfa875b0d1b7772f3\u003c/code\u003e associated with the tag \u003ccode\u003ev_1.6.3\u003c/code\u003e.  The release was built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29   under Linux Debian 11.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e--\nSponsoring SLF4J/logback/reload4j at \u003ca href=\"https://github.com/sponsors/qos-ch\"\u003ehttps://github.com/sponsors/qos-ch\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eLogback 1.6.2\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd\"\u003ehttps://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003e2026-08-10 Release of logback version 1.6.2\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eConfiguration analysis now detects \u003cem\u003econtradictory caller-data inclusion instructions\u003c/em\u003e. For example, an \u003ccode\u003eAsyncAppender\u003c/code\u003e, \u003ccode\u003eSocketAppender\u003c/code\u003e or \u003ccode\u003eSMTPAppender\u003c/code\u003e with \u003ccode\u003eincludeCallerData\u003c/code\u003e left at the default \u003ccode\u003efalse\u003c/code\u003e is incompatible with a layout or encoder pattern that uses a caller-data converter such as \u003ccode\u003e%C\u003c/code\u003e, \u003ccode\u003e%M\u003c/code\u003e, \u003ccode\u003e%L\u003c/code\u003e, \u003ccode\u003e%F\u003c/code\u003e, \u003ccode\u003e%l\u003c/code\u003e or \u003ccode\u003e%caller\u003c/code\u003e. At runtime those converters would print question marks and still incur extraction cost on a worker thread. Logback now emits a configuration-time warning when such instructions disagree. See \u003ca href=\"https://logback.qos.ch/codes.html#callerContradiction\"\u003ecodes.html#callerContradiction\u003c/a\u003e for details. This issue was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1059\"\u003eissues/1059\u003c/a\u003e by \u003ca href=\"https://github.com/leeychee\"\u003eleeychee\u003c/a\u003e. The initial analysis was contributed by \u003ca href=\"https://github.com/seonwooj0810\"\u003eseonwoo_jung\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCaller-contradiction analysis can be turned off by setting the \u003ccode\u003elogback.skipCallerContradictionAnalysis\u003c/code\u003e variable to \u003ccode\u003etrue\u003c/code\u003e, either as a system property (\u003ccode\u003e-Dlogback.skipCallerContradictionAnalysis=true\u003c/code\u003e) or as a property in the configuration file:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;property name=\u0026quot;logback.skipCallerContradictionAnalysis\u0026quot; value=\u0026quot;true\u0026quot;/\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eSimpleSocketServer\u003c/code\u003e and \u003ccode\u003eSimpleSSLSocketServer\u003c/code\u003e now require an explicit client IP whitelist. On the command line, pass one or more allowed addresses (single IPs or CIDR ranges) after the configuration file. An empty whitelist means no clients are accepted. When embedding the server programmatically, register allowed addresses with \u003ccode\u003eaddAllowedClientAddress(String)\u003c/code\u003e or \u003ccode\u003esetAllowedClientAddresses(Collection)\u003c/code\u003e before clients connect. See the documentation on \u003ca href=\"https://logback.qos.ch/manual/appenders.html#simpleSocketServerClientAccess\"\u003erestricting client access\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003eThrowableProxyVOBuilder\u003c/code\u003e for assembling a \u003ccode\u003eThrowableProxyVO\u003c/code\u003e field by field, with a corresponding \u003ccode\u003eThrowableProxyVO.builder()\u003c/code\u003e entry point.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDependency analysis handlers now run their \u003ccode\u003epostHandle\u003c/code\u003e method after child models have been processed, so checks that depend on nested appenders (such as caller-contradiction analysis) see a complete picture.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated several dependencies, including Angus Mail to 2.0.4 and Jetty (test) to 12.1.12.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eA bit-wise identical binary of this version can be reproduced by building from \u003ca href=\"https://github.com/qos-ch/logback\"\u003esource code\u003c/a\u003e at commit e3d78330ad1ba024fd987fd00c3ffb9cfcdb07dc associated with the tag \u003ccode\u003ev_1.6.2\u003c/code\u003e. The release was built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eLogback 1.6.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-07-28 Release of logback version 1.6.1\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In TimeBasedRollingPolicy, when the file option is set, the intermediate file renamed before asynchronous compression now receives the target archive name without the compression suffix (e.g. \u003ccode\u003e.gz\u003c/code\u003e, \u003ccode\u003e.zip\u003c/code\u003e, \u003ccode\u003e.xz\u003c/code\u003e). Previously it used a nanotime-based \u003ccode\u003e.tmp\u003c/code\u003e suffix. This makes the file easier to identify if compression fails during rollover. (See also the following paragraph.)\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/qos-ch/logback/commit/e8e824dede022a6d7208b36cfa875b0d1b7772f3\"\u003e\u003ccode\u003ee8e824d\u003c/code\u003e\u003c/a\u003e prepare release 1.6.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/761821bfaacac3a0ad44fa546cfc814429bf9312\"\u003e\u003ccode\u003e761821b\u003c/code\u003e\u003c/a\u003e MDCBasedDiscriminator has a gated warning mechanism\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/53ed1229008d8b1902f5c234deaa07d742890879\"\u003e\u003ccode\u003e53ed122\u003c/code\u003e\u003c/a\u003e update copyright year\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/c7e2db244671ffa916182b5da8c89579eb54a645\"\u003e\u003ccode\u003ec7e2db2\u003c/code\u003e\u003c/a\u003e rename SimpleInvocationGate as FixedIntervalInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/b5aa931b096a4b0b6a9e140b74fabe7da152cbf0\"\u003e\u003ccode\u003eb5aa931\u003c/code\u003e\u003c/a\u003e added BatchedSimpleInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/1f22af7686aadd25c08b4bd1e6943a906a743ad4\"\u003e\u003ccode\u003e1f22af7\u003c/code\u003e\u003c/a\u003e add javadocs to SimpleInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/638ffa7e7852478b605a91b3e91238ff26f8158c\"\u003e\u003ccode\u003e638ffa7\u003c/code\u003e\u003c/a\u003e prevent forward and backward slashes to escape to other directories\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/7d6b9a4f8c8996834c0a694f6c141705a003d7bb\"\u003e\u003ccode\u003e7d6b9a4\u003c/code\u003e\u003c/a\u003e add missing ch.qos.logback.core.property package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/fa25930346f35636fb6a077c1f66ebb06edd3b6f\"\u003e\u003ccode\u003efa25930\u003c/code\u003e\u003c/a\u003e add an extension path in ConsoleAppender for JansiConsoleAppender\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/c73b43f2011f9d4545abc7ea461172276a0a43b3\"\u003e\u003ccode\u003ec73b43f\u003c/code\u003e\u003c/a\u003e deprecate the withJansi path\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/qos-ch/logback/compare/v_1.5.38...v_1.6.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.google.guava:guava` from 33.6.0-jre to 33.7.1-jre\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/google/guava/releases\"\u003ecom.google.guava:guava's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e33.7.1\u003c/h2\u003e\n\u003ch3\u003eMaven\u003c/h3\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;dependency\u0026gt;\r\n  \u0026lt;groupId\u0026gt;com.google.guava\u0026lt;/groupId\u0026gt;\r\n  \u0026lt;artifactId\u0026gt;guava\u0026lt;/artifactId\u0026gt;\r\n  \u0026lt;version\u0026gt;33.7.1-jre\u0026lt;/version\u0026gt;\r\n  \u0026lt;!-- or, for Android: --\u0026gt;\r\n  \u0026lt;version\u0026gt;33.7.1-android\u0026lt;/version\u0026gt;\r\n\u0026lt;/dependency\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eJar files\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://repo1.maven.org/maven2/com/google/guava/guava/33.7.1-jre/guava-33.7.1-jre.jar\"\u003e33.7.1-jre.jar\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://repo1.maven.org/maven2/com/google/guava/guava/33.7.1-android/guava-33.7.1-android.jar\"\u003e33.7.1-android.jar\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eGuava requires \u003ca href=\"https://github.com/google/guava/wiki/UseGuavaInYourBuild#what-about-guavas-own-dependencies\"\u003eone runtime dependency\u003c/a\u003e, which you can download here:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://repo1.maven.org/maven2/com/google/guava/failureaccess/1.0.3/failureaccess-1.0.3.jar\"\u003efailureaccess-1.0.3.jar\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJavadoc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://guava.dev/releases/33.7.1-jre/api/docs/\"\u003e33.7.1-jre\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://guava.dev/releases/33.7.1-android/api/docs/\"\u003e33.7.1-android\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eJDiff\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://guava.dev/releases/33.7.1-jre/api/diffs/\"\u003e33.7.1-jre vs. 33.7.0-jre\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://guava.dev/releases/33.7.1-android/api/diffs/\"\u003e33.7.1-android vs. 33.7.0-android\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://guava.dev/releases/33.7.1-android/api/androiddiffs/\"\u003e33.7.1-android vs. 33.7.1-jre\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChangelog\u003c/h3\u003e\n\u003cp\u003eGuava 33.7.1 removes the \u003ccode\u003eMulti-Release\u003c/code\u003e line from our jar manifest, fixing an issue under Java 9 and 10 that was introduced to \u003ccode\u003eguava-jre\u003c/code\u003e in \u003ca href=\"https://github.com/google/guava/releases/tag/v33.7.0\"\u003eversion 33.7.0\u003c/a\u003e. Sorry for the trouble.\u003c/p\u003e\n\u003ch2\u003e33.7.0\u003c/h2\u003e\n\u003ch3\u003eNewly introduced problem for Java 9 and Java 10 only\u003c/h3\u003e\n\u003cp\u003eGuava 33.7.0 includes a \u003ccode\u003eMulti-Release\u003c/code\u003e line in its jar manifest, even though it is no longer a multi-release jar. This causes \u003ca href=\"https://redirect.github.com/google/guava/issues/8614\"\u003esome problems with tools from Java 9 and Java 10\u003c/a\u003e. The issue is fixed in \u003ca href=\"https://github.com/google/guava/releases/tag/v33.7.1\"\u003eversion 33.7.1\u003c/a\u003e. Sorry for the trouble.\u003c/p\u003e\n\u003ch3\u003eMaven\u003c/h3\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;dependency\u0026gt;\r\n  \u0026lt;groupId\u0026gt;com.google.guava\u0026lt;/groupId\u0026gt;\r\n  \u0026lt;artifactId\u0026gt;guava\u0026lt;/artifactId\u0026gt;\r\n  \u0026lt;version\u0026gt;33.7.0-jre\u0026lt;/version\u0026gt;\r\n  \u0026lt;!-- or, for Android: --\u0026gt;\r\n\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/google/guava/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `commons-codec:commons-codec` from 1.22.0 to 1.22.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/commons-codec/blob/master/RELEASE-NOTES.txt\"\u003ecommons-codec:commons-codec's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eApache Commons Codec 1.22.1 Release Notes\u003c/h2\u003e\n\u003cp\u003eThe Apache Commons Codec team is pleased to announce the release of Apache Commons Codec 1.22.1.\u003c/p\u003e\n\u003cp\u003eThe Apache Commons Codec component contains encoders and decoders for\nformats such as Base16, Base32, Base64, digest, and Hexadecimal. In addition to these\nwidely used encoders and decoders, the codec package also maintains a\ncollection of phonetic encoding utilities.\u003c/p\u003e\n\u003cp\u003eThis is a feature and maintenance release. Java 8 or later is required.\u003c/p\u003e\n\u003ch2\u003eFixed Bugs\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCODEC-344:  Base64.Builder.setEncodeTable(byte...) accepts invalid custom alphabets. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-340:  Base58.Builder.setEncodeTable(byte...) is ignored when encoding and decoding. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-342:  Base32.Builder.setEncodeTable(byte...) can create a codec that cannot decode its own output. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-343:  Base32.Builder.setHexDecodeTable(boolean) sets the encode table to a decode lookup table. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-341:  Base16.Builder.setEncodeTable(byte...) can create a codec that cannot decode its own output. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-339:  URLCodec.encodeUrl(BitSet, byte[]) allows custom safe sets to emit URL encoding control characters. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-338:  PercentCodec loses literal '+' when plusForSpace is enabled. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-337:  Digest ALL reuses System.in, so only the first algorithm sees the real input (\u003ca href=\"https://redirect.github.com/apache/commons-codec/issues/431\"\u003e#431\u003c/a\u003e). Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Fix Base64.toIntegerBytes(BigInteger) for zero edge case ([#441](https://github.com/apache/commons-codec/issues/441)). Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Add messages when throwing NullPointerException. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Add messages when throwing NullPointerException. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        StringEncoderComparator.StringEncoderComparator(StringEncoder) now fails fast on null input. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Bump org.apache.commons:commons-parent from 98 to 103. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Bump commons-io:commons-io from 2.21.0 to 2.22.0. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor complete information on Apache Commons Codec, including instructions on how to submit bug reports,\npatches, or suggestions for improvement, see the Apache Commons Codec website:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://commons.apache.org/proper/commons-codec/\"\u003ehttps://commons.apache.org/proper/commons-codec/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDownload page: \u003ca href=\"https://commons.apache.org/proper/commons-codec/download_codec.cgi\"\u003ehttps://commons.apache.org/proper/commons-codec/download_codec.cgi\u003c/a\u003e\u003c/p\u003e\n\u003chr /\u003e\n\u003c/blockquote\u003e\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-codec/commit/dc8f6c832a30f524bf12a5ae7ab013e4ad7c088f\"\u003e\u003ccode\u003edc8f6c8\u003c/code\u003e\u003c/a\u003e Prepare for the release candidate 1.22.1 RC1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/8203c1c5bb4342e2fbf258556cac4826eae7ca11\"\u003e\u003ccode\u003e8203c1c\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-codec/commit/5647fe2a66b3e74f044f414ad10d92407ede9396\"\u003e\u003ccode\u003e5647fe2\u003c/code\u003e\u003c/a\u003e StringEncoderComparator.StringEncoderComparator(StringEncoder) now fails\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/00c27a9c0636f15a0ba1d0bdc1f00fb8d9cee0fd\"\u003e\u003ccode\u003e00c27a9\u003c/code\u003e\u003c/a\u003e Reduce vertical whitespace\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/568f2d7d7cf24ff0074eec29e21868ce9fe24236\"\u003e\u003ccode\u003e568f2d7\u003c/code\u003e\u003c/a\u003e Remove unused method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/316fb15f3aa1e810a27fcc858d7c0e7ba0a4d724\"\u003e\u003ccode\u003e316fb15\u003c/code\u003e\u003c/a\u003e Remove unused method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/bf6b543c1d49bf36d9ee10de1a1472dc5d677b10\"\u003e\u003ccode\u003ebf6b543\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 7.0.0 to 7.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/e14cdfe55f4837b63daca367374ce996ad87fc5a\"\u003e\u003ccode\u003ee14cdfe\u003c/code\u003e\u003c/a\u003e Extract redundant code.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/3351e63155fa41fbfcb0744efa960adce1529798\"\u003e\u003ccode\u003e3351e63\u003c/code\u003e\u003c/a\u003e Add messages when throwing NullPointerException.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/f22dab7ea52e8bd07dfa84a6f37ce915d1536b1c\"\u003e\u003ccode\u003ef22dab7\u003c/code\u003e\u003c/a\u003e Update SCM tag\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/commons-codec/compare/rel/commons-codec-1.22.0...rel/commons-codec-1.22.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-core` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-netty-shaded` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-netty-shaded's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-netty-shaded` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-netty-shaded's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.smallrye.common:smallrye-common-annotation` from 2.19.0 to 2.20.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/defd310a881f1c168e958f8f73fc7c6518499a4e\"\u003e\u003ccode\u003edefd310\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/ffc98f68f60160620b1156b233dd650104f09862\"\u003e\u003ccode\u003effc98f6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/581\"\u003e#581\u003c/a\u003e from smallrye/release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/7cf7fcc86bddc8a9e96f14a34ac292e617d0202b\"\u003e\u003ccode\u003e7cf7fcc\u003c/code\u003e\u003c/a\u003e Release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/e6f3c592559944617e16f008f1d1ac3285fcef75\"\u003e\u003ccod...\n\n_Description has been truncated_","html_url":"https://github.com/jetty/jetty.project/pull/15655","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jetty%2Fjetty.project/issues/15655","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/15655/packages"}},{"old_version":"3.5.9","new_version":"3.5.10","update_type":"patch","path":null,"pr_created_at":"2026-08-20T04:16:13.000Z","version_change":"3.5.9 → 3.5.10","issue":{"uuid":"5199617559","node_id":"PR_kwDOAB81F88AAAABAXgZXQ","number":15624,"state":"closed","title":"[12.0.x EE8] Bump the dev-dependencies group across 1 directory with 18 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-08-22T00:25:13.000Z","author_association":null,"state_reason":null,"created_at":"2026-08-20T04:16:13.000Z","updated_at":"2026-08-22T00:25:13.000Z","time_to_close":158940,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[12.0.x EE8] Bump","group_name":"dev-dependencies","update_count":18,"packages":[{"name":"org.conscrypt:conscrypt-openjdk-uber","old_version":"2.6.0","new_version":"2.6.2","repository_url":"https://github.com/google/conscrypt"},{"name":"com.fasterxml.jackson:jackson-bom","old_version":"2.22.1","new_version":"2.22.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"io.netty:netty-bom","old_version":"4.2.16.Final","new_version":"4.2.17.Final","repository_url":"https://github.com/netty/netty"},{"name":"ch.qos.logback:logback-core","old_version":"1.5.38","new_version":"1.6.3","repository_url":"https://github.com/qos-ch/logback"},{"name":"commons-codec:commons-codec","old_version":"1.22.0","new_version":"1.22.1","repository_url":"https://github.com/apache/commons-codec"},{"name":"io.grpc:grpc-core","old_version":"1.82.2","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc-java"},{"name":"io.grpc:grpc-netty-shaded","old_version":"1.82.2","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc-java"},{"name":"io.smallrye.common:smallrye-common-annotation","old_version":"2.19.0","new_version":"2.20.0","repository_url":"https://github.com/smallrye/smallrye-common"},{"name":"io.smallrye.common:smallrye-common-cpu","old_version":"2.19.0","new_version":"2.20.0","repository_url":"https://github.com/smallrye/smallrye-common"},{"name":"org.bouncycastle:bctls-jdk18on","old_version":"1.84","new_version":"1.85","repository_url":"https://github.com/bcgit/bc-java"},{"name":"org.eclipse.sisu:org.eclipse.sisu.inject","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/eclipse-sisu/sisu-project"},{"name":"org.eclipse.sisu:org.eclipse.sisu.plexus","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/eclipse-sisu/sisu-project"},{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.9","new_version":"3.5.10","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.eclipse.jetty.toolchain:jetty-build-support","old_version":"1.5","new_version":"1.6"},{"name":"eu.maveniverse.maven.njord:extension3","old_version":"0.9.9","new_version":"0.9.10","repository_url":"https://github.com/maveniverse/njord"},{"name":"eu.maveniverse.maven.plugins:njord","old_version":"0.9.9","new_version":"0.9.10","repository_url":"https://github.com/maveniverse/njord"},{"name":"org.apache.maven.extensions:maven-build-cache-extension","old_version":"1.2.3","new_version":"1.3.0","repository_url":"https://github.com/apache/maven-build-cache-extension"},{"name":"org.cyclonedx:cyclonedx-maven-plugin","old_version":"2.9.2","new_version":"2.9.3","repository_url":"https://github.com/CycloneDX/cyclonedx-maven-plugin"}],"path":null,"ecosystem":"maven"},"body":"Bumps the dev-dependencies group with 18 updates in the /jetty-ee8 directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.conscrypt:conscrypt-openjdk-uber](https://github.com/google/conscrypt) | `2.6.0` | `2.6.2` |\n| [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `2.22.1` | `2.22.2` |\n| [io.netty:netty-bom](https://github.com/netty/netty) | `4.2.16.Final` | `4.2.17.Final` |\n| [ch.qos.logback:logback-core](https://github.com/qos-ch/logback) | `1.5.38` | `1.6.3` |\n| [commons-codec:commons-codec](https://github.com/apache/commons-codec) | `1.22.0` | `1.22.1` |\n| [io.grpc:grpc-core](https://github.com/grpc/grpc-java) | `1.82.2` | `1.83.1` |\n| [io.grpc:grpc-netty-shaded](https://github.com/grpc/grpc-java) | `1.82.2` | `1.83.1` |\n| [io.smallrye.common:smallrye-common-annotation](https://github.com/smallrye/smallrye-common) | `2.19.0` | `2.20.0` |\n| [io.smallrye.common:smallrye-common-cpu](https://github.com/smallrye/smallrye-common) | `2.19.0` | `2.20.0` |\n| [org.bouncycastle:bctls-jdk18on](https://github.com/bcgit/bc-java) | `1.84` | `1.85` |\n| [org.eclipse.sisu:org.eclipse.sisu.inject](https://github.com/eclipse-sisu/sisu-project) | `1.0.1` | `1.1.0` |\n| [org.eclipse.sisu:org.eclipse.sisu.plexus](https://github.com/eclipse-sisu/sisu-project) | `1.0.1` | `1.1.0` |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.9` | `3.5.10` |\n| org.eclipse.jetty.toolchain:jetty-build-support | `1.5` | `1.6` |\n| [eu.maveniverse.maven.njord:extension3](https://github.com/maveniverse/njord) | `0.9.9` | `0.9.10` |\n| [eu.maveniverse.maven.plugins:njord](https://github.com/maveniverse/njord) | `0.9.9` | `0.9.10` |\n| [org.apache.maven.extensions:maven-build-cache-extension](https://github.com/apache/maven-build-cache-extension) | `1.2.3` | `1.3.0` |\n| [org.cyclonedx:cyclonedx-maven-plugin](https://github.com/CycloneDX/cyclonedx-maven-plugin) | `2.9.2` | `2.9.3` |\n\n\nUpdates `org.conscrypt:conscrypt-openjdk-uber` from 2.6.0 to 2.6.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/google/conscrypt/releases\"\u003eorg.conscrypt:conscrypt-openjdk-uber's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.6.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1526\"\u003egoogle/conscrypt#1526\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNow only requires GLIBC_2.14, which fixes \u003ca href=\"https://redirect.github.com/robolectric/robolectric/issues/11362\"\u003erobolectric/robolectric#11362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.6.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1519\"\u003egoogle/conscrypt#1519\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixes \u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1499#issuecomment-4923001123\"\u003egoogle/conscrypt#1499\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/google/conscrypt/commit/657e1c64c46961bcc48e7302e42ebc02d6632645\"\u003e\u003ccode\u003e657e1c6\u003c/code\u003e\u003c/a\u003e Use an Ubuntu 20.04 container to build Concrypt on GitHub CI, and make Make a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/44a36308a64e3f872192baabd7c3b5819dc618a2\"\u003e\u003ccode\u003e44a3630\u003c/code\u003e\u003c/a\u003e Close contexts after each test in SSLEngineVersionCompatibilityTest. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1524\"\u003e#1524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/5bdcae0fe8aeb92009eba087969aed7f0ae0e167\"\u003e\u003ccode\u003e5bdcae0\u003c/code\u003e\u003c/a\u003e Project import generated by Copybara. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1523\"\u003e#1523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/google/conscrypt/commit/6135d6016b052477efe689fd98e5fca9b5325eed\"\u003e\u003ccode\u003e6135d60\u003c/code\u003e\u003c/a\u003e Project import generated by Copybara. (\u003ca href=\"https://redirect.github.com/google/conscrypt/issues/1522\"\u003e#1522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/google/conscrypt/compare/2.6.0...2.6.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.22.1 to 2.22.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/062d76d67a3619238e00d4d62f9bdb51cfe6cd52\"\u003e\u003ccode\u003e062d76d\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/dcf18f79fa8a9b935d880b3906291d8ed8cb1d0d\"\u003e\u003ccode\u003edcf18f7\u003c/code\u003e\u003c/a\u003e Prep for 2.22.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/9688c7b1dfc9072fdec7c9770653072d0a728fd1\"\u003e\u003ccode\u003e9688c7b\u003c/code\u003e\u003c/a\u003e Merge branch '2.21' into 2.22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7796a7ddb240ce41c1b6c6a3a435b29948a6a727\"\u003e\u003ccode\u003e7796a7d\u003c/code\u003e\u003c/a\u003e Merge branch '2.20' into 2.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/d3cd7fc1794f6d1a9f0a4dee41d8d46a310741d7\"\u003e\u003ccode\u003ed3cd7fc\u003c/code\u003e\u003c/a\u003e Merge branch '2.19' into 2.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7a28068902087b3c407d2dcabd875d7593127d97\"\u003e\u003ccode\u003e7a28068\u003c/code\u003e\u003c/a\u003e Merge branch '2.18' into 2.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/51eb4657b141f598bb285763ac42492bd23a1da3\"\u003e\u003ccode\u003e51eb465\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/34ff5e8c68b0712086794b8287d0ad643a0a1993\"\u003e\u003ccode\u003e34ff5e8\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-bom/commit/0b44a458b999c5ac5568e2a4b1190a7d1080038e\"\u003e\u003ccode\u003e0b44a45\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-2.18.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/691ec93ce7c1fcc582a2a44348e82e91ca424098\"\u003e\u003ccode\u003e691ec93\u003c/code\u003e\u003c/a\u003e Prep for 2.18.10 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.22.1...jackson-bom-2.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.netty:netty-bom` from 4.2.16.Final to 4.2.17.Final\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/netty/netty/releases\"\u003eio.netty:netty-bom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003enetty-4.2.17.Final\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAsciiString.cached(String) should sanitize the provided String (\u003ca href=\"https://redirect.github.com/netty/netty/issues/13749\"\u003e#13749\u003c/a\u003e) by \u003ca href=\"https://github.com/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17007\"\u003enetty/netty#17007\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deploy workflow by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17071\"\u003enetty/netty#17071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix AsciiString.cached(String) performance regression by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17074\"\u003enetty/netty#17074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSslHandler: Fix possible buffer leak when an OOME is thrown during allocation by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17059\"\u003enetty/netty#17059\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leak presence detector in leak profile by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17073\"\u003enetty/netty#17073\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd HttpContentCompressor constructor with ability to specify desired maxPipelineDepth by \u003ca href=\"https://github.com/reta\"\u003e\u003ccode\u003e@​reta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17068\"\u003enetty/netty#17068\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: preserve readPending when rescheduling cancelled reads by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17087\"\u003enetty/netty#17087\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReject negative maxOrder in PooledByteBufAllocator by \u003ca href=\"https://github.com/coderbruis\"\u003e\u003ccode\u003e@​coderbruis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17093\"\u003enetty/netty#17093\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix AdaptiveByteBuf._setLongLE calling checked setLongLE by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17098\"\u003enetty/netty#17098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSnappy: Guard decoder against invalid chunk lengths by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17099\"\u003enetty/netty#17099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix OCSP Tests by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17114\"\u003enetty/netty#17114\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate to latest netty-tcnative release by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17056\"\u003enetty/netty#17056\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse safe decompressor in Lz4FrameDecoder by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17118\"\u003enetty/netty#17118\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eConfigure TestLens for the PR builds by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17129\"\u003enetty/netty#17129\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: add SO_INQ support for Unix domain sockets by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17127\"\u003enetty/netty#17127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(mqtt): drop UNSUBACK reason codes for MQTT 3.x encoding by \u003ca href=\"https://github.com/ChunMengLu\"\u003e\u003ccode\u003e@​ChunMengLu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17117\"\u003enetty/netty#17117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePropagate the CI envionment variables through to the docker builds by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17138\"\u003enetty/netty#17138\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add decompressor API by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/16745\"\u003enetty/netty#16745\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix silent failures and optimize error short-circuit in multi-threaded tests by \u003ca href=\"https://github.com/rajan-github\"\u003e\u003ccode\u003e@​rajan-github\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17106\"\u003enetty/netty#17106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Bzip2Decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17145\"\u003enetty/netty#17145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix buddy cache evicting chunks with live buffers by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17154\"\u003enetty/netty#17154\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Snappy frame decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17153\"\u003enetty/netty#17153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add zlib decompressors by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17155\"\u003enetty/netty#17155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Zstd decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17152\"\u003enetty/netty#17152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add LZF decompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17147\"\u003enetty/netty#17147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add BrotliDecompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17146\"\u003enetty/netty#17146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCodec-compression: Add Lz4FrameDecompressor by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17148\"\u003enetty/netty#17148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eHttpObjectEncoder\u003c/code\u003e / \u003ccode\u003eDefaultHttp2FrameWriter\u003c/code\u003e: fix buffer leak when a \u003ccode\u003eThrowable\u003c/code\u003e is thrown during header encoding by \u003ca href=\"https://github.com/HwangRock\"\u003e\u003ccode\u003e@​HwangRock\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17089\"\u003enetty/netty#17089\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix direct memory OOM on low-core containers by \u003ca href=\"https://github.com/franz1981\"\u003e\u003ccode\u003e@​franz1981\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17166\"\u003enetty/netty#17166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIoUring: Fix the recvmmsg emulation by \u003ca href=\"https://github.com/dreamlike-ocean\"\u003e\u003ccode\u003e@​dreamlike-ocean\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17187\"\u003enetty/netty#17187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid classloader leak via GlobalEventExecutor terminationFuture failure by \u003ca href=\"https://github.com/seonwooj0810\"\u003e\u003ccode\u003e@​seonwooj0810\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17140\"\u003enetty/netty#17140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBrotliEncoder: Prevent duplicate close scheduling by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17175\"\u003enetty/netty#17175\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix JdkZlibDecompressor losing the tail of highly compressible streams by \u003ca href=\"https://github.com/renechoi\"\u003e\u003ccode\u003e@​renechoi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17191\"\u003enetty/netty#17191\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate compress-lzf to 1.2.1 by \u003ca href=\"https://github.com/yawkat\"\u003e\u003ccode\u003e@​yawkat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17194\"\u003enetty/netty#17194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not write WebSocket handshake response to the tail of the pipeline by \u003ca href=\"https://github.com/el-psy-kongroo-d\"\u003e\u003ccode\u003e@​el-psy-kongroo-d\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17192\"\u003enetty/netty#17192\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eHttpServerCodec\u003c/code\u003e: do not consume the method queue for 1xx interim responses by \u003ca href=\"https://github.com/HwangRock\"\u003e\u003ccode\u003e@​HwangRock\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17182\"\u003enetty/netty#17182\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWeakly reference engines from the OpenSSL engine map by \u003ca href=\"https://github.com/bryce-anderson\"\u003e\u003ccode\u003e@​bryce-anderson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17199\"\u003enetty/netty#17199\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOpenSSL: Allow to obtain used named group via OpenSslSession by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17058\"\u003enetty/netty#17058\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.editorconfig\u003c/code\u003e to enforce consistent coding style by \u003ca href=\"https://github.com/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17052\"\u003enetty/netty#17052\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate surefire plugin to latest version by \u003ca href=\"https://github.com/normanmaurer\"\u003e\u003ccode\u003e@​normanmaurer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17210\"\u003enetty/netty#17210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMerge changes from forks by \u003ca href=\"https://github.com/chrisvest\"\u003e\u003ccode\u003e@​chrisvest\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17213\"\u003enetty/netty#17213\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/vpelikh\"\u003e\u003ccode\u003e@​vpelikh\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17007\"\u003enetty/netty#17007\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ChunMengLu\"\u003e\u003ccode\u003e@​ChunMengLu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17117\"\u003enetty/netty#17117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rajan-github\"\u003e\u003ccode\u003e@​rajan-github\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17106\"\u003enetty/netty#17106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seonwooj0810\"\u003e\u003ccode\u003e@​seonwooj0810\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17140\"\u003enetty/netty#17140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/renechoi\"\u003e\u003ccode\u003e@​renechoi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/netty/netty/pull/17191\"\u003enetty/netty#17191\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/netty/netty/commit/e0789d32c72f46fd2e7c99b6fdbbf7e2f4409e44\"\u003e\u003ccode\u003ee0789d3\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release netty-4.2.17.Final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/1b5abc6443b63726c72cdd285af2feb7ddbb8ff7\"\u003e\u003ccode\u003e1b5abc6\u003c/code\u003e\u003c/a\u003e Merge changes from forks (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17213\"\u003e#17213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/36fbf5788c73e7040e6f18fed841a2cdfcae1452\"\u003e\u003ccode\u003e36fbf57\u003c/code\u003e\u003c/a\u003e Update surefire plugin to latest version (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17210\"\u003e#17210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/a96226cb54e87e963e1e341cd7121f2217fc7c2e\"\u003e\u003ccode\u003ea96226c\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e.editorconfig\u003c/code\u003e to enforce consistent coding style (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17052\"\u003e#17052\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/14a4e6ad865a187c3f1bf0da18d9146472e18192\"\u003e\u003ccode\u003e14a4e6a\u003c/code\u003e\u003c/a\u003e OpenSSL: Allow to obtain used named group via OpenSslSession (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17058\"\u003e#17058\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/26255b123f7c699cd88cbdb42f6ecc6ed5cb7843\"\u003e\u003ccode\u003e26255b1\u003c/code\u003e\u003c/a\u003e Weakly reference engines from the OpenSSL engine map (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17199\"\u003e#17199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/ae414179e3a030e0747fb68648ff2433fa4539e1\"\u003e\u003ccode\u003eae41417\u003c/code\u003e\u003c/a\u003e \u003ccode\u003eHttpServerCodec\u003c/code\u003e: do not consume the method queue for 1xx interim responses ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/41f1db523d3657954e9ad12250004cbdfde2a97d\"\u003e\u003ccode\u003e41f1db5\u003c/code\u003e\u003c/a\u003e Do not write WebSocket handshake response to the tail of the pipeline (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17192\"\u003e#17192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/035d76e3f43fa462e101c1e03b59a69984c5ebf3\"\u003e\u003ccode\u003e035d76e\u003c/code\u003e\u003c/a\u003e Update compress-lzf to 1.2.1 (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17194\"\u003e#17194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/netty/netty/commit/7681affcf120fca1de8554095216ddea20b408c5\"\u003e\u003ccode\u003e7681aff\u003c/code\u003e\u003c/a\u003e Fix JdkZlibDecompressor losing the tail of highly compressible streams (\u003ca href=\"https://redirect.github.com/netty/netty/issues/17191\"\u003e#17191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/netty/netty/compare/netty-4.2.16.Final...netty-4.2.17.Final\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ch.qos.logback:logback-core` from 1.5.38 to 1.6.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qos-ch/logback/releases\"\u003ech.qos.logback:logback-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eLogback 1.6.3\u003c/h2\u003e\n\u003ch1\u003e2026-08-14 Release of logback version 1.6.3\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eIn response \u003ca href=\"https://www.cve.org/cverecord?id=CVE-2026-19880\"\u003eCVE-2026-19880\u003c/a\u003e,  \u003ccode\u003eMDCBasedDiscriminator\u003c/code\u003e (used by \u003ccode\u003eSiftingAppender\u003c/code\u003e) now strips forward and  backward slashes (\u003ccode\u003e/\u003c/code\u003e, \u003ccode\u003e\\\u003c/code\u003e) from MDC values before they are used as  discriminating keys. This prevents path segments from escaping into  destinations controlled by an attacker. When sanitisation actually changes a  value, a warning is emitted; the warning is rate-limited (a small batch, then  a lull of about ten minutes).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eColour console support is split out into a dedicated  \u003ca href=\"https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender\"\u003e\u003ccode\u003eJansiConsoleAppender\u003c/code\u003e\u003c/a\u003e. It wraps stdout or stderr with  Jansi so ANSI escape sequences (for example coloured patterns) render  correctly on terminals that need it, notably Windows. Prefer this class over  the older path described next. See the  \u003ca href=\"https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender\"\u003eappenders documentation\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe \u003ccode\u003ewithJansi\u003c/code\u003e property on \u003ccode\u003eConsoleAppender\u003c/code\u003e is \u003cstrong\u003edeprecated\u003c/strong\u003e. Existing  configurations that still set \u003ccode\u003e\u0026lt;withJansi\u0026gt;true\u0026lt;/withJansi\u0026gt;\u003c/code\u003e continue to work  for compatibility, but new setups should use \u003ccode\u003eJansiConsoleAppender\u003c/code\u003e instead.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eConsoleAppender\u003c/code\u003e no longer treats the process console as an exclusive  resource: stopping it does not close \u003ccode\u003eSystem.out\u003c/code\u003e / \u003ccode\u003eSystem.err\u003c/code\u003e.  \u003ccode\u003eJansiConsoleAppender\u003c/code\u003e pairs each \u003ccode\u003eAnsiConsole.systemInstall()\u003c/code\u003e with  \u003ccode\u003esystemUninstall()\u003c/code\u003e on stop, so repeated start/stop cycles do not leave Jansi  installed or tear down streams shared with the rest of the JVM. Related  behavior is covered by tests for  \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1063\"\u003eissues/1063\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eInvocation throttling helpers were reworked: \u003ccode\u003eSimpleInvocationGate\u003c/code\u003e is renamed  \u003ccode\u003eFixedIntervalInvocationGate\u003c/code\u003e, and \u003ccode\u003eBatchedFixedIntervalInvocationGate\u003c/code\u003e allows  a short burst of invocations before applying a fixed lull. The sanitisation\nwarning above uses the batched gate.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe JPMS \u003ccode\u003emodule-info\u003c/code\u003e for logback-core now exports the  \u003ccode\u003ech.qos.logback.core.property\u003c/code\u003e package, which had been missing from the module   descriptor.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eA bit-wise identical binary of this version can be reproduced by building from  \u003ca href=\"https://github.com/qos-ch/logback\"\u003esource code\u003c/a\u003e at commit  \u003ccode\u003ee8e824dede022a6d7208b36cfa875b0d1b7772f3\u003c/code\u003e associated with the tag \u003ccode\u003ev_1.6.3\u003c/code\u003e.  The release was built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29   under Linux Debian 11.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eLogback 1.6.2\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd\"\u003ehttps://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd\u003c/a\u003e\u003c/p\u003e\n\u003ch1\u003e2026-08-10 Release of logback version 1.6.2\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eConfiguration analysis now detects \u003cem\u003econtradictory caller-data inclusion instructions\u003c/em\u003e. For example, an \u003ccode\u003eAsyncAppender\u003c/code\u003e, \u003ccode\u003eSocketAppender\u003c/code\u003e or \u003ccode\u003eSMTPAppender\u003c/code\u003e with \u003ccode\u003eincludeCallerData\u003c/code\u003e left at the default \u003ccode\u003efalse\u003c/code\u003e is incompatible with a layout or encoder pattern that uses a caller-data converter such as \u003ccode\u003e%C\u003c/code\u003e, \u003ccode\u003e%M\u003c/code\u003e, \u003ccode\u003e%L\u003c/code\u003e, \u003ccode\u003e%F\u003c/code\u003e, \u003ccode\u003e%l\u003c/code\u003e or \u003ccode\u003e%caller\u003c/code\u003e. At runtime those converters would print question marks and still incur extraction cost on a worker thread. Logback now emits a configuration-time warning when such instructions disagree. See \u003ca href=\"https://logback.qos.ch/codes.html#callerContradiction\"\u003ecodes.html#callerContradiction\u003c/a\u003e for details. This issue was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1059\"\u003eissues/1059\u003c/a\u003e by \u003ca href=\"https://github.com/leeychee\"\u003eleeychee\u003c/a\u003e. The initial analysis was contributed by \u003ca href=\"https://github.com/seonwooj0810\"\u003eseonwoo_jung\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCaller-contradiction analysis can be turned off by setting the \u003ccode\u003elogback.skipCallerContradictionAnalysis\u003c/code\u003e variable to \u003ccode\u003etrue\u003c/code\u003e, either as a system property (\u003ccode\u003e-Dlogback.skipCallerContradictionAnalysis=true\u003c/code\u003e) or as a property in the configuration file:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;property name=\u0026quot;logback.skipCallerContradictionAnalysis\u0026quot; value=\u0026quot;true\u0026quot;/\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eSimpleSocketServer\u003c/code\u003e and \u003ccode\u003eSimpleSSLSocketServer\u003c/code\u003e now require an explicit client IP whitelist. On the command line, pass one or more allowed addresses (single IPs or CIDR ranges) after the configuration file. An empty whitelist means no clients are accepted. When embedding the server programmatically, register allowed addresses with \u003ccode\u003eaddAllowedClientAddress(String)\u003c/code\u003e or \u003ccode\u003esetAllowedClientAddresses(Collection)\u003c/code\u003e before clients connect. See the documentation on \u003ca href=\"https://logback.qos.ch/manual/appenders.html#simpleSocketServerClientAccess\"\u003erestricting client access\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003eThrowableProxyVOBuilder\u003c/code\u003e for assembling a \u003ccode\u003eThrowableProxyVO\u003c/code\u003e field by field, with a corresponding \u003ccode\u003eThrowableProxyVO.builder()\u003c/code\u003e entry point.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDependency analysis handlers now run their \u003ccode\u003epostHandle\u003c/code\u003e method after child models have been processed, so checks that depend on nested appenders (such as caller-contradiction analysis) see a complete picture.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated several dependencies, including Angus Mail to 2.0.4 and Jetty (test) to 12.1.12.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eA bit-wise identical binary of this version can be reproduced by building from \u003ca href=\"https://github.com/qos-ch/logback\"\u003esource code\u003c/a\u003e at commit e3d78330ad1ba024fd987fd00c3ffb9cfcdb07dc associated with the tag \u003ccode\u003ev_1.6.2\u003c/code\u003e. The release was built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eLogback 1.6.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-07-28 Release of logback version 1.6.1\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In TimeBasedRollingPolicy, when the file option is set, the intermediate file renamed before asynchronous compression now receives the target archive name without the compression suffix (e.g. \u003ccode\u003e.gz\u003c/code\u003e, \u003ccode\u003e.zip\u003c/code\u003e, \u003ccode\u003e.xz\u003c/code\u003e). Previously it used a nanotime-based \u003ccode\u003e.tmp\u003c/code\u003e suffix. This makes the file easier to identify if compression fails during rollover. (See also the following paragraph.)\u003c/p\u003e\n\u003cp\u003e• On GZ, ZIP, or XZ compression failure, the original (uncompressed) log file is no longer deleted. Compression strategies now delete the source file only after successful compression and emit a warning that the original was left intact.\u003c/p\u003e\n\u003cp\u003e• ConsoleAppender with \u003c!-- raw HTML omitted --\u003e now probes JLine's org.jline.jansi.AnsiConsole first and falls back to the legacy FuseSource org.fusesource.jansi.AnsiConsole class. This keeps ANSI coloring working after Jansi moved under the JLine project. The optional org.jline:jansi-core artifact is declared as a dependency alongside the existing FuseSource jansi dependency. A preferredJansiClassName property was added for tests. This issue was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1043\"\u003eissues/1043\u003c/a\u003e by \u003ca href=\"https://github.com/seonwooj0810\"\u003eseonwoo_jung\u003c/a\u003e who also provided the relevant PR.\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/qos-ch/logback/commit/e8e824dede022a6d7208b36cfa875b0d1b7772f3\"\u003e\u003ccode\u003ee8e824d\u003c/code\u003e\u003c/a\u003e prepare release 1.6.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/761821bfaacac3a0ad44fa546cfc814429bf9312\"\u003e\u003ccode\u003e761821b\u003c/code\u003e\u003c/a\u003e MDCBasedDiscriminator has a gated warning mechanism\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/53ed1229008d8b1902f5c234deaa07d742890879\"\u003e\u003ccode\u003e53ed122\u003c/code\u003e\u003c/a\u003e update copyright year\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/c7e2db244671ffa916182b5da8c89579eb54a645\"\u003e\u003ccode\u003ec7e2db2\u003c/code\u003e\u003c/a\u003e rename SimpleInvocationGate as FixedIntervalInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/b5aa931b096a4b0b6a9e140b74fabe7da152cbf0\"\u003e\u003ccode\u003eb5aa931\u003c/code\u003e\u003c/a\u003e added BatchedSimpleInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/1f22af7686aadd25c08b4bd1e6943a906a743ad4\"\u003e\u003ccode\u003e1f22af7\u003c/code\u003e\u003c/a\u003e add javadocs to SimpleInvocationGate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/638ffa7e7852478b605a91b3e91238ff26f8158c\"\u003e\u003ccode\u003e638ffa7\u003c/code\u003e\u003c/a\u003e prevent forward and backward slashes to escape to other directories\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/7d6b9a4f8c8996834c0a694f6c141705a003d7bb\"\u003e\u003ccode\u003e7d6b9a4\u003c/code\u003e\u003c/a\u003e add missing ch.qos.logback.core.property package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/fa25930346f35636fb6a077c1f66ebb06edd3b6f\"\u003e\u003ccode\u003efa25930\u003c/code\u003e\u003c/a\u003e add an extension path in ConsoleAppender for JansiConsoleAppender\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qos-ch/logback/commit/c73b43f2011f9d4545abc7ea461172276a0a43b3\"\u003e\u003ccode\u003ec73b43f\u003c/code\u003e\u003c/a\u003e deprecate the withJansi path\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/qos-ch/logback/compare/v_1.5.38...v_1.6.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `commons-codec:commons-codec` from 1.22.0 to 1.22.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/commons-codec/blob/master/RELEASE-NOTES.txt\"\u003ecommons-codec:commons-codec's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eApache Commons Codec 1.22.1 Release Notes\u003c/h2\u003e\n\u003cp\u003eThe Apache Commons Codec team is pleased to announce the release of Apache Commons Codec 1.22.1.\u003c/p\u003e\n\u003cp\u003eThe Apache Commons Codec component contains encoders and decoders for\nformats such as Base16, Base32, Base64, digest, and Hexadecimal. In addition to these\nwidely used encoders and decoders, the codec package also maintains a\ncollection of phonetic encoding utilities.\u003c/p\u003e\n\u003cp\u003eThis is a feature and maintenance release. Java 8 or later is required.\u003c/p\u003e\n\u003ch2\u003eFixed Bugs\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCODEC-344:  Base64.Builder.setEncodeTable(byte...) accepts invalid custom alphabets. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-340:  Base58.Builder.setEncodeTable(byte...) is ignored when encoding and decoding. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-342:  Base32.Builder.setEncodeTable(byte...) can create a codec that cannot decode its own output. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-343:  Base32.Builder.setHexDecodeTable(boolean) sets the encode table to a decode lookup table. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-341:  Base16.Builder.setEncodeTable(byte...) can create a codec that cannot decode its own output. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-339:  URLCodec.encodeUrl(BitSet, byte[]) allows custom safe sets to emit URL encoding control characters. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-338:  PercentCodec loses literal '+' when plusForSpace is enabled. Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003eCODEC-337:  Digest ALL reuses System.in, so only the first algorithm sees the real input (\u003ca href=\"https://redirect.github.com/apache/commons-codec/issues/431\"\u003e#431\u003c/a\u003e). Thanks to Ruiqi Dong, Gary Gregory.\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Fix Base64.toIntegerBytes(BigInteger) for zero edge case ([#441](https://github.com/apache/commons-codec/issues/441)). Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Add messages when throwing NullPointerException. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Add messages when throwing NullPointerException. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        StringEncoderComparator.StringEncoderComparator(StringEncoder) now fails fast on null input. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Bump org.apache.commons:commons-parent from 98 to 103. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cpre\u003e\u003ccode\u003e        Bump commons-io:commons-io from 2.21.0 to 2.22.0. Thanks to Gary Gregory.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor complete information on Apache Commons Codec, including instructions on how to submit bug reports,\npatches, or suggestions for improvement, see the Apache Commons Codec website:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://commons.apache.org/proper/commons-codec/\"\u003ehttps://commons.apache.org/proper/commons-codec/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDownload page: \u003ca href=\"https://commons.apache.org/proper/commons-codec/download_codec.cgi\"\u003ehttps://commons.apache.org/proper/commons-codec/download_codec.cgi\u003c/a\u003e\u003c/p\u003e\n\u003chr /\u003e\n\u003c/blockquote\u003e\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-codec/commit/dc8f6c832a30f524bf12a5ae7ab013e4ad7c088f\"\u003e\u003ccode\u003edc8f6c8\u003c/code\u003e\u003c/a\u003e Prepare for the release candidate 1.22.1 RC1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/8203c1c5bb4342e2fbf258556cac4826eae7ca11\"\u003e\u003ccode\u003e8203c1c\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-codec/commit/5647fe2a66b3e74f044f414ad10d92407ede9396\"\u003e\u003ccode\u003e5647fe2\u003c/code\u003e\u003c/a\u003e StringEncoderComparator.StringEncoderComparator(StringEncoder) now fails\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/00c27a9c0636f15a0ba1d0bdc1f00fb8d9cee0fd\"\u003e\u003ccode\u003e00c27a9\u003c/code\u003e\u003c/a\u003e Reduce vertical whitespace\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/568f2d7d7cf24ff0074eec29e21868ce9fe24236\"\u003e\u003ccode\u003e568f2d7\u003c/code\u003e\u003c/a\u003e Remove unused method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/316fb15f3aa1e810a27fcc858d7c0e7ba0a4d724\"\u003e\u003ccode\u003e316fb15\u003c/code\u003e\u003c/a\u003e Remove unused method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/bf6b543c1d49bf36d9ee10de1a1472dc5d677b10\"\u003e\u003ccode\u003ebf6b543\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 7.0.0 to 7.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/e14cdfe55f4837b63daca367374ce996ad87fc5a\"\u003e\u003ccode\u003ee14cdfe\u003c/code\u003e\u003c/a\u003e Extract redundant code.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/3351e63155fa41fbfcb0744efa960adce1529798\"\u003e\u003ccode\u003e3351e63\u003c/code\u003e\u003c/a\u003e Add messages when throwing NullPointerException.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/commons-codec/commit/f22dab7ea52e8bd07dfa84a6f37ce915d1536b1c\"\u003e\u003ccode\u003ef22dab7\u003c/code\u003e\u003c/a\u003e Update SCM tag\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/commons-codec/compare/rel/commons-codec-1.22.0...rel/commons-codec-1.22.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-core` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-netty-shaded` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-netty-shaded's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.grpc:grpc-netty-shaded` from 1.82.2 to 1.83.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/grpc/grpc-java/releases\"\u003eio.grpc:grpc-netty-shaded's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.83.1\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.1 Release Notes\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enetty: Fix client-initiated stream limit bypass in NettyServerHandler (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12942\"\u003e#12942\u003c/a\u003e). Enforces the limit proactively at startup without waiting for SETTINGS_ACK\u003c/li\u003e\n\u003cli\u003ecore: Coalesce Contiguous Small Buffers for ReadableBuffer (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12944\"\u003e#12944\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.83.0\u003c/h2\u003e\n\u003ch2\u003egRPC Java 1.83.0 Release Notes\u003c/h2\u003e\n\u003ch3\u003eAPI Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Turn on RFC 3986 parsing by default and update javadoc. (4456721328)\u003c/li\u003e\n\u003cli\u003eapi: Add Grpc.newChannelBuilder accepting NameResolverRegistry (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/11901\"\u003e#11901\u003c/a\u003e) (2b86f8f42f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBehavior Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eokhttp: enable TLS 1.3 for servers on Android (3018ce341c). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers\u003c/li\u003e\n\u003cli\u003exds: enable orca to lrs propagation by default (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12836\"\u003e#12836\u003c/a\u003e) (1e85674a40) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85\u003c/li\u003e\n\u003cli\u003exds: Use leaf cluster name for  backend service label in metrics, instead of aggregate cluster name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12882\"\u003e#12882\u003c/a\u003e) (c8079eed98). This only has an effect when using aggregate clusters\u003c/li\u003e\n\u003cli\u003exds: Hold parsed service config in CdsUpdate (3db3235ebd). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree\u003c/li\u003e\n\u003cli\u003exds: Revert \u0026quot;xds: reuse connections to the control plane across channels\u0026quot; added in 1.81.0 (d49c0b15d8). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript \u0026quot;DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs\u0026quot; or \u0026quot;DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs\u0026quot;\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapi: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b852)\u003c/li\u003e\n\u003cli\u003ecore: normalize service config number values (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12826\"\u003e#12826\u003c/a\u003e) (663c505dbd) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.\u003c/li\u003e\n\u003cli\u003ecore: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25eb5). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.\u003c/li\u003e\n\u003cli\u003enetty: Reduce TcpMetrics log from INFO to FINE (4ec83df1eb). This removes unnecessary log noise\u003c/li\u003e\n\u003cli\u003ecore: Enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e) (89aef90d52). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Netty 4.2.15 (66c6ab1da6). If you need Netty 4.1 support, please file an issue\u003c/li\u003e\n\u003cli\u003eUpgrade codegen plugin to C++ Protobuf 35.1 (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12876\"\u003e#12876\u003c/a\u003e) (c886f0a06b)\u003c/li\u003e\n\u003cli\u003eUpgrade various dependencies (064272c61d):\n\u003cul\u003e\n\u003cli\u003egson to 2.14.0\u003c/li\u003e\n\u003cli\u003eguava to 33.6.0\u003c/li\u003e\n\u003cli\u003ecel-java to 0.13.0\u003c/li\u003e\n\u003cli\u003eprotobuf-java to 3.25.9\u003c/li\u003e\n\u003cli\u003eerror-prone-annotations to 2.50.0\u003c/li\u003e\n\u003cli\u003eopentelemetry to 1.63.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument how to build with Bazel and introduce bazel support for building android and binder (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12811\"\u003e#12811\u003c/a\u003e) (f94574eff7)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eThanks to\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/grpc/grpc-java/commit/8f621c03b776eed114c39969ce1bf347625d2e9d\"\u003e\u003ccode\u003e8f621c0\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/2bafe5e8c7b40c1244656894d3ac0170ab792912\"\u003e\u003ccode\u003e2bafe5e\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/e1f2dbd873bf1dc5d26218276a40c055ab49c4f4\"\u003e\u003ccode\u003ee1f2dbd\u003c/code\u003e\u003c/a\u003e netty: Fix client-initiated stream limit bypass in NettyServerHandler (v1.83....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/ee8232feb42e64bff79eb9be1ff107da7c10d9e7\"\u003e\u003ccode\u003eee8232f\u003c/code\u003e\u003c/a\u003e core: Coalesce Contiguous Small Buffers for ReadableBuffer (v1.83.x backport)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4ca099f30d8c362fad54b63f34cab87c11530f2\"\u003e\u003ccode\u003eb4ca099\u003c/code\u003e\u003c/a\u003e Fix docker tagging failure in upload_artifacts by using stable tag name (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12922\"\u003e#12922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/b4fb7f425fa5186da6512ed332005d38a391af15\"\u003e\u003ccode\u003eb4fb7f4\u003c/code\u003e\u003c/a\u003e build: Allow downloading pkgconfiglite with empty checksum\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/1fbfa8692d18c6d86184c19443ea05e22f28e092\"\u003e\u003ccode\u003e1fbfa86\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.1-SNAPSHOT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/8ab6e0af58129d6fc397d0da3cbfae8fe5f21b17\"\u003e\u003ccode\u003e8ab6e0a\u003c/code\u003e\u003c/a\u003e Bump version to 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/33ad6a45369a4b4cbb60639cb112895e7f4e771f\"\u003e\u003ccode\u003e33ad6a4\u003c/code\u003e\u003c/a\u003e Update README etc to reference 1.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/grpc/grpc-java/commit/17d5bd6c675496f23c239497faf4beba7142ea7e\"\u003e\u003ccode\u003e17d5bd6\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;enable child channel plugins (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12578\"\u003e#12578\u003c/a\u003e)\u0026quot; (v1.83.x backport) (\u003ca href=\"https://redirect.github.com/grpc/grpc-java/issues/12913\"\u003e#12913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/grpc/grpc-java/compare/v1.82.2...v1.83.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.smallrye.common:smallrye-common-annotation` from 2.19.0 to 2.20.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/defd310a881f1c168e958f8f73fc7c6518499a4e\"\u003e\u003ccode\u003edefd310\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/ffc98f68f60160620b1156b233dd650104f09862\"\u003e\u003ccode\u003effc98f6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/581\"\u003e#581\u003c/a\u003e from smallrye/release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/7cf7fcc86bddc8a9e96f14a34ac292e617d0202b\"\u003e\u003ccode\u003e7cf7fcc\u003c/code\u003e\u003c/a\u003e Release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/e6f3c592559944617e16f008f1d1ac3285fcef75\"\u003e\u003ccode\u003ee6f3c59\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/579\"\u003e#579\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/232049fc7397665ed85ed6a57ae57574a7a2b84f\"\u003e\u003ccode\u003e232049f\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.29 to 4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/b89fee46677f6d62fa10cfb67adb16fbe9fe767a\"\u003e\u003ccode\u003eb89fee4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/576\"\u003e#576\u003c/a\u003e from smallrye/dependabot/maven/org.graalvm.sdk-native...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/d2c6a36fce245cb95cf3a08f8268c530f6eceeff\"\u003e\u003ccode\u003ed2c6a36\u003c/code\u003e\u003c/a\u003e Bump org.graalvm.sdk:nativeimage from 25.0.3 to 25.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/dc378965bead25b95112ee86c264ff88b41fd7e4\"\u003e\u003ccode\u003edc37896\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/578\"\u003e#578\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/3d73326ea1c881fad45e48db7a67383359be1f35\"\u003e\u003ccode\u003e3d73326\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.28 to 4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/bdb9f0b6c1089eddb54a3959905d0316aa49db37\"\u003e\u003ccode\u003ebdb9f0b\u003c/code\u003e\u003c/a\u003e Bump io.smallrye:smallrye-parent from 50 to 51 (\u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/577\"\u003e#577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smallrye/smallrye-common/compare/2.19.0...2.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.smallrye.common:smallrye-common-cpu` from 2.19.0 to 2.20.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/defd310a881f1c168e958f8f73fc7c6518499a4e\"\u003e\u003ccode\u003edefd310\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/ffc98f68f60160620b1156b233dd650104f09862\"\u003e\u003ccode\u003effc98f6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/581\"\u003e#581\u003c/a\u003e from smallrye/release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/7cf7fcc86bddc8a9e96f14a34ac292e617d0202b\"\u003e\u003ccode\u003e7cf7fcc\u003c/code\u003e\u003c/a\u003e Release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/e6f3c592559944617e16f008f1d1ac3285fcef75\"\u003e\u003ccode\u003ee6f3c59\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/579\"\u003e#579\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/232049fc7397665ed85ed6a57ae57574a7a2b84f\"\u003e\u003ccode\u003e232049f\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.29 to 4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/b89fee46677f6d62fa10cfb67adb16fbe9fe767a\"\u003e\u003ccode\u003eb89fee4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/576\"\u003e#576\u003c/a\u003e from smallrye/dependabot/maven/org.graalvm.sdk-native...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/d2c6a36fce245cb95cf3a08f8268c530f6eceeff\"\u003e\u003ccode\u003ed2c6a36\u003c/code\u003e\u003c/a\u003e Bump org.graalvm.sdk:nativeimage from 25.0.3 to 25.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/dc378965bead25b95112ee86c264ff88b41fd7e4\"\u003e\u003ccode\u003edc37896\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/578\"\u003e#578\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/3d73326ea1c881fad45e48db7a67383359be1f35\"\u003e\u003ccode\u003e3d73326\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.28 to 4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/bdb9f0b6c1089eddb54a3959905d0316aa49db37\"\u003e\u003ccode\u003ebdb9f0b\u003c/code\u003e\u003c/a\u003e Bump io.smallrye:smallrye-parent from 50 to 51 (\u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/577\"\u003e#577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smallrye/smallrye-common/compare/2.19.0...2.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `io.smallrye.common:smallrye-common-cpu` from 2.19.0 to 2.20.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/defd310a881f1c168e958f8f73fc7c6518499a4e\"\u003e\u003ccode\u003edefd310\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/ffc98f68f60160620b1156b233dd650104f09862\"\u003e\u003ccode\u003effc98f6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/581\"\u003e#581\u003c/a\u003e from smallrye/release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/7cf7fcc86bddc8a9e96f14a34ac292e617d0202b\"\u003e\u003ccode\u003e7cf7fcc\u003c/code\u003e\u003c/a\u003e Release 2.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/e6f3c592559944617e16f008f1d1ac3285fcef75\"\u003e\u003ccode\u003ee6f3c59\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/579\"\u003e#579\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/232049fc7397665ed85ed6a57ae57574a7a2b84f\"\u003e\u003ccode\u003e232049f\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.29 to 4.5.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/b89fee46677f6d62fa10cfb67adb16fbe9fe767a\"\u003e\u003ccode\u003eb89fee4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/576\"\u003e#576\u003c/a\u003e from smallrye/dependabot/maven/org.graalvm.sdk-native...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/d2c6a36fce245cb95cf3a08f8268c530f6eceeff\"\u003e\u003ccode\u003ed2c6a36\u003c/code\u003e\u003c/a\u003e Bump org.graalvm.sdk:nativeimage from 25.0.3 to 25.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/dc378965bead25b95112ee86c264ff88b41fd7e4\"\u003e\u003ccode\u003edc37896\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/578\"\u003e#578\u003c/a\u003e from smallrye/dependabot/maven/version.vertx4-4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/3d73326ea1c881fad45e48db7a67383359be1f35\"\u003e\u003ccode\u003e3d73326\u003c/code\u003e\u003c/a\u003e Bump version.vertx4 from 4.5.28 to 4.5.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smallrye/smallrye-common/commit/bdb9f0b6c1089eddb54a3959905d0316aa49db37\"\u003e\u003ccode\u003ebdb9f0b\u003c/code\u003e\u003c/a\u003e Bump io.smallrye:smallrye-parent from 50 to 51 (\u003ca href=\"https://redirect.github.com/smallrye/smallrye-common/issues/577\"\u003e#577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smallrye/smallrye-common/compare/2.19.0...2.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.bouncycastle:bctls-jdk18on` from 1.84 to 1.85\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:bctls-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.eclipse.sisu:org.eclipse.sisu.inject` from 1.0.1 to 1.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eclipse-sisu/sisu-project/releases\"\u003eorg.eclipse.sisu:org.eclipse.sisu.inject's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.1.0\u003c/h2\u003e\n\u003cp\u003eEclipse Sisu 1.1.0 release. Added new feature: JSR330 bean filtering.\u003c/p\u003e\n\u003cp\u003eImportant: when using Sisu Plexus Shim (that implicitly creates Sisu Inject), the JSR330 bean filtering will automatically \u0026quot;follow\u0026quot; (have same filtering rules applied) the Plexus Beans visibility. Control this behaviour using Plexus Container Configuration \u003ca href=\"https://eclipse.dev/sisu/apidocs/org/codehaus/plexus/ContainerConfiguration.html#setJSR330ComponentVisibilityFollowsPlexusVisibility(boolean)\"\u003enew method\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eUsers of Sisu Inject only (without Plexus Shim) are not affected by this change.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate Security Policy by \u003ca href=\"https://github.com/cstamas\"\u003e\u003ccode\u003e@​cstamas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/eclipse-sisu/sisu-project/pull/264\"\u003eeclipse-sisu/sisu-project#264\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild update by \u003ca href=\"https://github.com/cstamas\"\u003e\u003ccode\u003e@​cstamas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/eclipse-sisu/sisu-project/pull/267\"\u003eeclipse-sisu/sisu-project#267\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Ability to filter JSR330 beans based on some predicate by \u003ca href=\"https://github.com/cstamas\"\u003e\u003ccode\u003e@​cstamas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/eclipse-sisu...\n\n_Description has been truncated_","html_url":"https://github.com/jetty/jetty.project/pull/15624","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jetty%2Fjetty.project/issues/15624","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/15624/packages"}},{"old_version":"3.5.9","new_version":"3.5.10","update_type":"patch","path":null,"pr_created_at":"2026-07-30T03:04:53.000Z","version_change":"3.5.9 → 3.5.10","issue":{"uuid":"5015650298","node_id":"PR_kwDOAUE9SM74TkvC","number":3875,"state":"closed","title":"Bump org.mariadb.jdbc:mariadb-java-client from 3.5.9 to 3.5.10","user":"dependabot[bot]","labels":["type: dependency-upgrade"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-09-04T17:31:50.000Z","author_association":null,"state_reason":null,"created_at":"2026-07-30T03:04:53.000Z","updated_at":"2026-09-04T17:32:00.000Z","time_to_close":3162417,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.9","new_version":"3.5.10","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"}],"path":null,"ecosystem":"maven"},"body":"Bumps [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) from 3.5.9 to 3.5.10.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.10\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.10\"\u003e3.5.10\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.9...3.5.10\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1333 - Add maxAllowedPacket connection option (send/receive limit)\u003c/li\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1330 - add infer test to CI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1307 - Connection.setReadOnly(true) still allows DML statements to execute\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1327 - Align SSL hostname verification with TLS libraries (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1331 - trustStore-configured TLS connections defer certificate-chain/identity validation instead of validating\nup front (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1340 - SQL injection via unescaped identifiers in updatable ResultSet generated statements (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1341 - MariaDbPoolDataSource.getConnection(user, password) ignores the user argument when the pool's own\npassword is supplied (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1328 - restrictedAuth allowlist is matched with substring contains() instead of equality (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1338 - Validate length-encoded integers fit a non-negative int before use as a length (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1336 - CONJ-1282 regression: TLS connection fails when JDBC hostname is an absolute FQDN ending with a trailing\ndot (report by Shaswata, thanks to Pepo48 for PR)\u003c/li\u003e\n\u003cli\u003eCONJ-1335 - getGeneratedKeys() throws \u0026quot;integer overflow\u0026quot; after a batch insert when the auto-increment value exceeds\nInteger.MAX_VALUE, and returns bulk generated keys out of batch order\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.10\"\u003e3.5.10\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.9...3.5.10\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1333 - Add maxAllowedPacket connection option (send/receive limit)\u003c/li\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1330 - add infer test to CI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1307 - Connection.setReadOnly(true) still allows DML statements to execute\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1327 - Align SSL hostname verification with TLS libraries (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1331 - trustStore-configured TLS connections defer certificate-chain/identity validation instead of validating\nup front (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1340 - SQL injection via unescaped identifiers in updatable ResultSet generated statements (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1341 - MariaDbPoolDataSource.getConnection(user, password) ignores the user argument when the pool's own\npassword is supplied (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1328 - restrictedAuth allowlist is matched with substring contains() instead of equality (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1338 - Validate length-encoded integers fit a non-negative int before use as a length (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1336 - CONJ-1282 regression: TLS connection fails when JDBC hostname is an absolute FQDN ending with a trailing\ndot (report by Shaswata, thanks to Pepo48 for PR)\u003c/li\u003e\n\u003cli\u003eCONJ-1335 - getGeneratedKeys() throws \u0026quot;integer overflow\u0026quot; after a batch insert when the auto-increment value exceeds\nInteger.MAX_VALUE, and returns bulk generated keys out of batch order\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.4.4\"\u003e3.4.4\u003c/a\u003e (Jul 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.4.3...3.4.4\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eNotable Changes\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1339 - Add maxAllowedColumns option to bound server-announced column count (report by fg0x0)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1332 - Reject multipart (\u0026gt;16 MB) packets before authentication to prevent pre-auth OOM from a rogue server\u003c/li\u003e\n\u003cli\u003eCONJ-1342 - socketFactory option allows loading arbitrary bytecode via jar: URL, enabling RCE when JDBC URL is\nattacker-controlled (report by Qing Xu)\u003c/li\u003e\n\u003cli\u003eCONJ-1326 - Unsafe escaping in enquoteLiteral()/enquoteNCharLiteral() (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1329 - LOAD DATA LOCAL INFILE validation fails open when a bound parameter can't be rendered (thanks to\njmestwa-coder)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/6164678e83aa9d203939d5bec73bd4571cbec8a2\"\u003e\u003ccode\u003e6164678\u003c/code\u003e\u003c/a\u003e [misc] update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/6f58858707c3d59881b171c40ec5ddd2773b0642\"\u003e\u003ccode\u003e6f58858\u003c/code\u003e\u003c/a\u003e [CONJ-1335] getGeneratedKeys() throws SQLDataException \u0026quot;integer overflow\u0026quot; aft...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/9f06db76c8502fa952dcd4de6ebe46cfe3f6ead9\"\u003e\u003ccode\u003e9f06db7\u003c/code\u003e\u003c/a\u003e [misc] CI stability improvement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/99aa9e2e7b84ecf4edec20beeac37752066599c8\"\u003e\u003ccode\u003e99aa9e2\u003c/code\u003e\u003c/a\u003e [CONJ-1336] correction follow up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/28a1550357fd3773a1cda68d545e79573c26bc8a\"\u003e\u003ccode\u003e28a1550\u003c/code\u003e\u003c/a\u003e [CONJ-1336] strip trailing dot from hostname before SNI and hostname verifica...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/b2b3f1beb8a5cb83f48e68ed7b912c637da0634e\"\u003e\u003ccode\u003eb2b3f1b\u003c/code\u003e\u003c/a\u003e [misc] limit authentication switch requests to 10 per connection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26ca60ab4a6d58905d8beef98428bf04d6cd4a5f\"\u003e\u003ccode\u003e26ca60a\u003c/code\u003e\u003c/a\u003e [misc] bound the whole connection phase by connectTimeout\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/15e08ff54fd0247a5491fe2695562d36b8e7f7c2\"\u003e\u003ccode\u003e15e08ff\u003c/code\u003e\u003c/a\u003e [CONJ-1337] Limit parsec authentication PBKDF2 iteration factor to the connec...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d3c4a726d7cfcc0fa10ee4cdcca423a7d88c67ab\"\u003e\u003ccode\u003ed3c4a72\u003c/code\u003e\u003c/a\u003e bump 3.5.10 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d85e05f4dc010ce40df548cf908da6bbc2640903\"\u003e\u003ccode\u003ed85e05f\u003c/code\u003e\u003c/a\u003e [CONJ-1342] socketFactory option allows loading arbitrary bytecode via jar: U...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.9...3.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.mariadb.jdbc:mariadb-java-client\u0026package-manager=gradle\u0026previous-version=3.5.9\u0026new-version=3.5.10)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/spring-projects/spring-session/pull/3875","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/spring-projects%2Fspring-session/issues/3875","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3875/packages"}},{"old_version":"3.5.8","new_version":"3.5.9","update_type":"patch","path":null,"pr_created_at":"2026-06-13T04:53:00.000Z","version_change":"3.5.8 → 3.5.9","issue":{"uuid":"4654402332","node_id":"PR_kwDOQtbfPc7mBGUp","number":213,"state":"open","title":"Bump org.mariadb.jdbc:mariadb-java-client from 3.5.8 to 3.5.9","user":"dependabot[bot]","labels":[],"assignees":["schemacrawler","sualeh"],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-13T04:53:00.000Z","updated_at":"2026-06-13T04:53:47.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.8","new_version":"3.5.9","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"}],"path":null,"ecosystem":"maven"},"body":"Bumps [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) from 3.5.8 to 3.5.9.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.9\"\u003e3.5.9\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.8...3.5.9\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1223 - cache TLS trust/key managers across connections to reduce SSL connection cost\u003c/li\u003e\n\u003cli\u003eCONJ-1314 - add SPI for interactive dialog (PAM) authentication callback\u003c/li\u003e\n\u003cli\u003eCONJ-1311 - add dedicated option \u003ccode\u003euseIpForKillQuery\u003c/code\u003e for query cancellation\u003c/li\u003e\n\u003cli\u003eCONJ-1310 - Add full native image support and CI coverage\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1320 - PAM (dialog) authentication must require a secure connection (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1319 - Use constant-time comparison when validating the server certificate fingerprint (report by jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1318 - enforce \u003ccode\u003eallowLocalInfile=false\u003c/code\u003e on the server's local-infile request, so a malicious server cannot read a client file despite the option being disabled\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 - LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if MitM (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1304 - CallableStatement parameter metadata read from mysql.proc, with MySQL info_schema fallback\u003c/li\u003e\n\u003cli\u003eCONJ-1299 - keep VALUES literals after the last placeholder when rewriting batches\u003c/li\u003e\n\u003cli\u003eCONJ-1313 - race condition in HaMode#getAvailableHostInOrder can cause NPE\u003c/li\u003e\n\u003cli\u003eCONJ-1311 - Connection.cancelCurrentQuery fails with SslMode.VERIFY_FULL when client socket IP is set\u003c/li\u003e\n\u003cli\u003eCONJ-1264 - handle LocalDateTime as a zoneless wall-clock value\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1324 - fix SQL parser to correctly handle '--' in expressions and reset lastChar after block comments\u003c/li\u003e\n\u003cli\u003eCONJ-1323 - LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.4.3\"\u003e3.4.3\u003c/a\u003e (Jun 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.4.2...3.4.3\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch5\u003eBugs Fixed\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1315 - cap BigDecimal/BigInteger string parsing length to prevent CPU exhaustion if Mitm (report by tonghuaroot)\u003c/li\u003e\n\u003cli\u003eCONJ-1316 - pin Locale.ROOT on locale-sensitive call sites and date/time/Duration text formatting (fixes\nlocale-dependent parsing/formatting, e.g. under tr_TR) (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1259 - DatabaseMetaData read-only detection: handle MariaDB 12.0 \u003ccode\u003e@@read_only\u003c/code\u003e returning \u003ccode\u003eON\u003c/code\u003e/\u003ccode\u003eOFF\u003c/code\u003e\ninstead of \u003ccode\u003e1\u003c/code\u003e/\u003ccode\u003e0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCONJ-1317 - ensure non-UTF8 charset cannot be used for protocol exchanges (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1320 - PAM (dialog) authentication now requires a secure connection (TLS or unix socket), like mysql_clear_password (report by fg0x0)\u003c/li\u003e\n\u003cli\u003eCONJ-1319 - use constant-time comparison when validating the server certificate fingerprint (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1322 - match local infile filename case-sensitively (thanks to jmestwa-coder)\u003c/li\u003e\n\u003cli\u003eCONJ-1323 - LOAD LOCAL INFILE validation rejects statements preceded by line comments (thanks to sebdomdev)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.3.5\"\u003e3.3.5\u003c/a\u003e (Jun 2026)\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\u003eSee full diff in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.mariadb.jdbc:mariadb-java-client\u0026package-manager=maven\u0026previous-version=3.5.8\u0026new-version=3.5.9)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/schemacrawler/SchemaCrawler-Core/pull/213","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/schemacrawler%2FSchemaCrawler-Core/issues/213","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/213/packages"}},{"old_version":"3.5.7","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-05-22T03:13:03.000Z","version_change":"3.5.7 → 3.5.8","issue":{"uuid":"4499519588","node_id":"PR_kwDORvJjTc7eL9ZE","number":30,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 18 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-22T03:13:03.000Z","updated_at":"2026-05-22T03:17:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":18,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.0.3","new_version":"12.6.2"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"org.apache.pdfbox:jbig2-imageio","old_version":"3.0.4","new_version":"3.0.5"},{"name":"com.github.RouHim:jaudiotagger","old_version":"2.0.16","new_version":"2.0.21"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.6.0","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.6","new_version":"4.0.8"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.3","new_version":"3.2.4","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.6.Final","new_version":"7.3.5.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 16 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.0.3` | `12.6.2` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| org.apache.pdfbox:jbig2-imageio | `3.0.4` | `3.0.5` |\n| com.github.RouHim:jaudiotagger | `2.0.16` | `2.0.21` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.6.0` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.6` | `4.0.8` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.3` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.3` | `3.2.4` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.2.6.Final` | `7.3.5.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.5.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.0.3 to 12.6.2\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:jbig2-imageio` from 3.0.4 to 3.0.5\n\nUpdates `com.github.RouHim:jaudiotagger` from 2.0.16 to 2.0.21\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.6.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Gauthier Roebroeck, Robin Schimpf\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.10...v7.6.0\"\u003e7.6.0\u003c/a\u003e (2026-05-13)\u003c/h1\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\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/junrar/junrar/commit/cb4b7fdb84269e95741fa22120e08ceb15a06152\"\u003e\u003ccode\u003ecb4b7fd\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper to 9.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/0bb56b3df4e3b6d14f73de92746a2eb47dd2d7a3\"\u003e\u003ccode\u003e0bb56b3\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/ca621b22421f9e846df23112b32113230610c8d9\"\u003e\u003ccode\u003eca621b2\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/e0874d213832bbeaa8eb265c79479b01b5fa7392\"\u003e\u003ccode\u003ee0874d2\u003c/code\u003e\u003c/a\u003e feat: support random access for files in solid RAR4 archives\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/90f0548c728b0bf2e94f6e26f9e6396d9d0a7262\"\u003e\u003ccode\u003e90f0548\u003c/code\u003e\u003c/a\u003e build(deps): bump org.jreleaser from 1.23.0 to 1.24.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/83a5d085dc84991226229fef1515cc902d129241\"\u003e\u003ccode\u003e83a5d08\u003c/code\u003e\u003c/a\u003e build(deps): bump commons-io:commons-io from 2.21.0 to 2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/338efcb5472be051989fbafd7179d561c71722eb\"\u003e\u003ccode\u003e338efcb\u003c/code\u003e\u003c/a\u003e ci: replace deprecated action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/5270d235ade54d96dfc9958ab06f495fbbd169e7\"\u003e\u003ccode\u003e5270d23\u003c/code\u003e\u003c/a\u003e perf: replace RarCRC.checkCrc with java.util.zip.CRC32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d5abcdb9af988ddfa76e98d80787e15525488332\"\u003e\u003ccode\u003ed5abcdb\u003c/code\u003e\u003c/a\u003e build(deps): bump com.github.ben-manes.versions from 0.53.0 to 0.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/edadb28896962fdcf754029bafd0994aaff24530\"\u003e\u003ccode\u003eedadb28\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.10 [skip ci]\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.6 to 4.0.8\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/c2ea79e9178f0aaa5e4f381c644140357bfc307e\"\u003e\u003ccode\u003ec2ea79e\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3906b27dcdde8fc6a4fef193147109b70bf2f0dc\"\u003e\u003ccode\u003e3906b27\u003c/code\u003e\u003c/a\u003e Prep for 3.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/b17b616c7dc264cfef26f9dd28eaf54bc40b5c4c\"\u003e\u003ccode\u003eb17b616\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/36cf9995cff15aa3e69786da1d6c52f208fddf8a\"\u003e\u003ccode\u003e36cf999\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-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.ben-manes.caffeine:caffeine` from 3.2.3 to 3.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ben-manes/caffeine/releases\"\u003ecom.github.ben-manes.caffeine:caffeine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved access expiration's read performance by avoiding false sharing effects caused by the timestamp update\u003c/li\u003e\n\u003cli\u003eFixed head-of-line blocking of expiration queues caused by in-flight async entries (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed various minor issues found using AI audits\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://docs.oracle.com/en/java/javase/25/docs/api//java.base/java/io/ObjectInputFilter.html\"\u003eObjectInputFilter\u003c/a\u003e support to JCache\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/836b65c0a83e5d1641ded9c6de578654bc04b2e9\"\u003e\u003ccode\u003e836b65c\u003c/code\u003e\u003c/a\u003e use a consistent expiration tolerance calculation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0dc7daf962730048fe46ae4626827afbb97ddf92\"\u003e\u003ccode\u003e0dc7daf\u003c/code\u003e\u003c/a\u003e resurrect in-flight async entries on expiration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0bac8b54fd634ffe95d35ccd1d94daba95e7b369\"\u003e\u003ccode\u003e0bac8b5\u003c/code\u003e\u003c/a\u003e handle head-of-line blocking of expiration queues (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/ff258366de0a89129152ead72524ce88f8fca67b\"\u003e\u003ccode\u003eff25836\u003c/code\u003e\u003c/a\u003e test polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f3a6176e2e3a7fe085214472858c6029c108fc3f\"\u003e\u003ccode\u003ef3a6176\u003c/code\u003e\u003c/a\u003e Fix JCache close/createCache races and recursive teardown\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/622fbe7dbf7606f114b956205706935be2fcf3c8\"\u003e\u003ccode\u003e622fbe7\u003c/code\u003e\u003c/a\u003e Fix removal in identity views and widen hill-climber counters\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/8da5a7a05d8b725c9dbd577be8ffaf2372aa7e23\"\u003e\u003ccode\u003e8da5a7a\u003c/code\u003e\u003c/a\u003e defer weighing the entry until after the putIfAbsent hit fast-path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/94ad0ff8556c9923a8d9746ab85af9ee830dd051\"\u003e\u003ccode\u003e94ad0ff\u003c/code\u003e\u003c/a\u003e Record eviction stats before notifying the removal listener consistently\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f94c0113d0c98dc0afaadf1f6748ea280aa4dff7\"\u003e\u003ccode\u003ef94c011\u003c/code\u003e\u003c/a\u003e Auto-assert eviction stats alongside notifications.withCause.exclusively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/2e945e090fbff4f96251dfe1bacba3780a5bdb0c\"\u003e\u003ccode\u003e2e945e0\u003c/code\u003e\u003c/a\u003e Skip timestamp writes within tolerance on the read path.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ben-manes/caffeine/compare/v3.2.3...v3.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.2.6.Final to 7.3.5.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 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.0...v9.5.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cdome/ollumi/pull/30","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdome%2Follumi/issues/30","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/30/packages"}},{"old_version":"3.5.7","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-05-22T03:12:52.000Z","version_change":"3.5.7 → 3.5.8","issue":{"uuid":"4499519012","node_id":"PR_kwDORqdfXc7eL9SP","number":15,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 23 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-22T03:12:52.000Z","updated_at":"2026-05-22T03:16:05.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":23,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"11.19.0","new_version":"12.6.2"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"org.apache.pdfbox:jbig2-imageio","old_version":"3.0.4","new_version":"3.0.5"},{"name":"com.twelvemonkeys.imageio:imageio-jpeg","old_version":"3.13.0","new_version":"3.13.1"},{"name":"io.documentnode:epub4j-core","old_version":"4.2.2","new_version":"4.2.3","repository_url":"https://github.com/documentnode/epub4j"},{"name":"com.github.junrar:junrar","old_version":"7.5.7","new_version":"7.6.0","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.21.2","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"2.8.14","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.tukaani:xz","old_version":"1.11","new_version":"1.12","repository_url":"https://github.com/tukaani-project/xz-java"},{"name":"tools.jackson:jackson-bom","old_version":"3.0.4","new_version":"3.1.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.0","new_version":"3.2.4","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.assertj:assertj-core","old_version":"3.27.6","new_version":"3.27.7","repository_url":"https://github.com/assertj/assertj"},{"name":"org.springframework.boot","old_version":"4.0.2","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.0.Final","new_version":"7.3.5.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.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 gradle-dependencies group with 18 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `11.19.0` | `12.6.2` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| org.apache.pdfbox:jbig2-imageio | `3.0.4` | `3.0.5` |\n| com.twelvemonkeys.imageio:imageio-jpeg | `3.13.0` | `3.13.1` |\n| [io.documentnode:epub4j-core](https://github.com/documentnode/epub4j) | `4.2.2` | `4.2.3` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.7` | `7.6.0` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.21.2` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `2.8.14` | `3.0.3` |\n| [org.tukaani:xz](https://github.com/tukaani-project/xz-java) | `1.11` | `1.12` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.0.4` | `3.1.3` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.0` | `3.2.4` |\n| [org.assertj:assertj-core](https://github.com/assertj/assertj) | `3.27.6` | `3.27.7` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.2` | `4.0.6` |\n| org.hibernate.orm | `7.2.0.Final` | `7.3.5.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.5.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 11.19.0 to 12.6.2\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:jbig2-imageio` from 3.0.4 to 3.0.5\n\nUpdates `com.twelvemonkeys.imageio:imageio-jpeg` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-tiff` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-webp` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-bmp` from 3.13.0 to 3.13.1\n\nUpdates `io.documentnode:epub4j-core` from 4.2.2 to 4.2.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/documentnode/epub4j/commit/4bf55082feba0496f98b867ec03ebec5f393b649\"\u003e\u003ccode\u003e4bf5508\u003c/code\u003e\u003c/a\u003e Migrate Maven Central publishing to new Central Portal API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/documentnode/epub4j/commit/b153885ef8aefbe4063a40894c048a5cc2b5a354\"\u003e\u003ccode\u003eb153885\u003c/code\u003e\u003c/a\u003e Load sdkman environment before running gradle commands\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/documentnode/epub4j/compare/v4.2.2...v4.2.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.junrar:junrar` from 7.5.7 to 7.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.6.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Gauthier Roebroeck, Robin Schimpf\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.10...v7.6.0\"\u003e7.6.0\u003c/a\u003e (2026-05-13)\u003c/h1\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\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/junrar/junrar/commit/cb4b7fdb84269e95741fa22120e08ceb15a06152\"\u003e\u003ccode\u003ecb4b7fd\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper to 9.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/0bb56b3df4e3b6d14f73de92746a2eb47dd2d7a3\"\u003e\u003ccode\u003e0bb56b3\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/ca621b22421f9e846df23112b32113230610c8d9\"\u003e\u003ccode\u003eca621b2\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/e0874d213832bbeaa8eb265c79479b01b5fa7392\"\u003e\u003ccode\u003ee0874d2\u003c/code\u003e\u003c/a\u003e feat: support random access for files in solid RAR4 archives\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/90f0548c728b0bf2e94f6e26f9e6396d9d0a7262\"\u003e\u003ccode\u003e90f0548\u003c/code\u003e\u003c/a\u003e build(deps): bump org.jreleaser from 1.23.0 to 1.24.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/83a5d085dc84991226229fef1515cc902d129241\"\u003e\u003ccode\u003e83a5d08\u003c/code\u003e\u003c/a\u003e build(deps): bump commons-io:commons-io from 2.21.0 to 2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/338efcb5472be051989fbafd7179d561c71722eb\"\u003e\u003ccode\u003e338efcb\u003c/code\u003e\u003c/a\u003e ci: replace deprecated action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/5270d235ade54d96dfc9958ab06f495fbbd169e7\"\u003e\u003ccode\u003e5270d23\u003c/code\u003e\u003c/a\u003e perf: replace RarCRC.checkCrc with java.util.zip.CRC32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d5abcdb9af988ddfa76e98d80787e15525488332\"\u003e\u003ccode\u003ed5abcdb\u003c/code\u003e\u003c/a\u003e build(deps): bump com.github.ben-manes.versions from 0.53.0 to 0.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/edadb28896962fdcf754029bafd0994aaff24530\"\u003e\u003ccode\u003eedadb28\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.10 [skip ci]\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.7...v7.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.21.2 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\u003c/p\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.1\u003c/strong\u003e is out now, adding support for the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors, a configurable maximum parser depth, and numerous bug fixes and improvements.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://jsoup.org/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for using the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors (e.g. \u003ccode\u003e[attr~=regex]\u003c/code\u003e, \u003ccode\u003e:matches(regex)\u003c/code\u003e), which ensures linear-time performance for regex evaluation. This allows safer handling of arbitrary user-supplied query regexes. To enable, add the \u003ccode\u003ecom.google.re2j\u003c/code\u003e dependency to your classpath, e.g.:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e  \u0026lt;dependency\u0026gt;\r\n    \u0026lt;groupId\u0026gt;com.google.re2j\u0026lt;/groupId\u0026gt;\r\n    \u0026lt;artifactId\u0026gt;re2j\u0026lt;/artifactId\u0026gt;\r\n    \u0026lt;version\u0026gt;1.8\u0026lt;/version\u0026gt;\r\n  \u0026lt;/dependency\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e(If you already have that dependency in your classpath, but you want to keep using the Java regex engine, you can disable re2j via \u003ccode\u003eSystem.setProperty(\u0026quot;jsoup.useRe2j\u0026quot;, \u0026quot;false\u0026quot;)\u003c/code\u003e.) You can confirm that the re2j engine has been enabled correctly by calling \u003ccode\u003eRegex.usingRe2j()\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2407\"\u003e#2407\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.22.1 (2026-Jan-01)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for using the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors (e.g. \u003ccode\u003e[attr~=regex]\u003c/code\u003e, \u003ccode\u003e:matches(regex)\u003c/code\u003e), which ensures linear-time performance for regex evaluation. This allows safer handling of arbitrary user-supplied query regexes. To enable, add the \u003ccode\u003ecom.google.re2j\u003c/code\u003e dependency to your classpath, e.g.:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e  \u0026lt;dependency\u0026gt;\n    \u0026lt;groupId\u0026gt;com.google.re2j\u0026lt;/groupId\u0026gt;\n    \u0026lt;artifactId\u0026gt;re2j\u0026lt;/artifactId\u0026gt;\n    \u0026lt;version\u0026gt;1.8\u0026lt;/version\u0026gt;\n  \u0026lt;/dependency\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e(If you already have that dependency in your classpath, but you want to keep using the Java regex engine, you can disable re2j via \u003ccode\u003eSystem.setProperty(\u0026quot;jsoup.useRe2j\u0026quot;, \u0026quot;false\u0026quot;)\u003c/code\u003e.) You can confirm that the re2j engine has been enabled correctly by calling \u003ccode\u003eorg.jsoup.helper.Regex.usingRe2j()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2407\"\u003e#2407\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded an instance method \u003ccode\u003eParser#unescape(String, boolean)\u003c/code\u003e that unescapes HTML entities using the parser's configuration (e.g. to support error tracking), complementing the existing static utility \u003ccode\u003eParser.unescapeEntities(String, boolean)\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2396\"\u003e#2396\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded a configurable maximum parser depth (to limit the number of open elements on stack) to both HTML and XML parsers. The HTML parser now defaults to a depth of 512 to match browser behavior, and protect against unbounded stack growth, while the XML parser keeps unlimited depth by default, but can opt into a limit via \u003ccode\u003eorg.jsoup.parser.Parser#setMaxDepth\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2421\"\u003e#2421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild: added CI coverage for JDK 25 \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2403\"\u003e#2403\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild: added a CI fuzzer for contextual fragment parsing (in addition to existing full body HTML and XML fuzzers). [oss-fuzz \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/14041\"\u003e#14041\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/google/oss-fuzz/pull/14041\"\u003egoogle/oss-fuzz#14041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSet a removal schedule of jsoup 1.24.1 for previously deprecated APIs.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePreviously cached child \u003ccode\u003eElements\u003c/code\u003e of an \u003ccode\u003eElement\u003c/code\u003e were not correctly invalidated in \u003ccode\u003eNode#replaceWith(Node)\u003c/code\u003e, which could lead to incorrect results when subsequently calling \u003ccode\u003eElement#children()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2391\"\u003e#2391\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAttribute selector values are now compared literally without trimming. Previously, jsoup trimmed whitespace from selector values and from element attribute values, which could cause mismatches with browser behavior (e.g. \u003ccode\u003e[attr=\u0026quot; foo \u0026quot;]\u003c/code\u003e). Now matches align with the CSS specification and browser engines. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2380\"\u003e#2380\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen using the JDK HttpClient, any system default proxy (\u003ccode\u003eProxySelector.getDefault()\u003c/code\u003e) was ignored. Now, the system proxy is used if a per-request proxy is not set. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2388\"\u003e#2388\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2390\"\u003e#2390\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eA \u003ccode\u003eValidationException\u003c/code\u003e could be thrown in the adoption agency algorithm with particularly broken input. Now logged as a parse error. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2393\"\u003e#2393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNull characters in the HTML body were not consistently removed; and in foreign content were not correctly replaced. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2395\"\u003e#2395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAn \u003ccode\u003eIndexOutOfBoundsException\u003c/code\u003e could be thrown when parsing a body fragment with crafted input. Now logged as a parse error. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2397\"\u003e#2397\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2406\"\u003e#2406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen using StructuralEvaluators (e.g., a \u003ccode\u003eparent child\u003c/code\u003e selector) across many retained threads, their memoized results could also be retained, increasing memory use. These results are now cleared immediately after use, reducing overall memory consumption. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2411\"\u003e#2411\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCloning a \u003ccode\u003eParser\u003c/code\u003e now preserves any custom \u003ccode\u003eTagSet\u003c/code\u003e applied to the parser. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2422\"\u003e#2422\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2423\"\u003e#2423\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.21.2...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 2.8.14 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003espringdoc-openapi v3.0.2 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3229\"\u003e#3229\u003c/a\u003e – Add support for Spring Framework API Versioning with Functional Endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3208\"\u003e#3208\u003c/a\u003e – Add \u003ccode\u003espringdoc.swagger-ui.document-title\u003c/code\u003e property\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.3\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.43\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Scalar to version \u003cstrong\u003e0.5.55\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3232\"\u003e#3232\u003c/a\u003e – Gracefully handle springdoc endpoint paths during API version resolution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3230\"\u003e#3230\u003c/a\u003e – Scalar source URLs resolve to \u003ccode\u003enull/\u0026lt;groupName\u0026gt;\u003c/code\u003e on second request when using \u003ccode\u003eGroupedOpenApi\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3228\"\u003e#3228\u003c/a\u003e – springdoc-openapi-starter 3.x doesn't depend on \u003ccode\u003eorg.springframework.boot:spring-boot-starter\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.0.2] - 2026-02-27\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3229\"\u003e#3229\u003c/a\u003e – Add support for Spring Framework API Versioning with Functional Endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3208\"\u003e#3208\u003c/a\u003e – Add \u003ccode\u003espringdoc.swagger-ui.document-title\u003c/code\u003e property\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.3\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.43\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Scalar to version \u003cstrong\u003e0.5.55\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3232\"\u003e#3232\u003c/a\u003e – Gracefully handle springdoc endpoint paths during API version resolution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3230\"\u003e#3230\u003c/a\u003e – Scalar source URLs resolve to \u003ccode\u003enull/\u0026lt;groupName\u0026gt;\u003c/code\u003e on second request when using \u003ccode\u003eGroupedOpenApi\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3228\"\u003e#3228\u003c/a\u003e – springdoc-openapi-starter 3.x doesn't depend on \u003ccode\u003eorg.springframework.boot:spring-boot-starter\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3220\"\u003e#3220\u003c/a\u003e – Reachability metadata not compatible with GraalVM 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3195\"\u003e#3195\u003c/a\u003e – Application won't compile when OpenApi and spring-boot-data-rest is present\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3193\"\u003e#3193\u003c/a\u003e – \u003ccode\u003eOpenApi\u003c/code\u003e field in \u003ccode\u003eSpringDocConfigProperties\u003c/code\u003e does not comply with camel case naming conventions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v2.8.14...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.tukaani:xz` from 1.11 to 1.12\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tukaani-project/xz-java/blob/master/NEWS.md\"\u003eorg.tukaani:xz's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.12 (2026-03-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix ArrayIndexOutOfBoundsException in the LZMA/LZMA2 encoder on\nx86-64 and ARM64 when running on Java 9 or newer. The affected\ncode isn't used on Java 8. The bug is present in versions 1.10\nand 1.11. If one cannot upgrade, one should set the property\n\u003ccode\u003eorg.tukaani.xz.MatchLengthFinder=Basic\u003c/code\u003e to disable the affected\ncode path.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix ArrayCache usage in LZMAInputStream. If ArrayCache was enabled,\ndecompression was likely to fail quickly when the cache returns a\ncached array. ArrayCache is disabled by default.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe binaries of 1.12 in the Maven Central require Java 8 and\ncontain optimized classes for Java \u0026gt;= 9 as multi-release JAR.\nThey were built with OpenJDK 21.0.10 on GNU/Linux and can be\nreproduced using the following command:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSOURCE_DATE_EPOCH=1772370000 TZ=UTC0 ant maven\n\u003c/code\u003e\u003c/pre\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/tukaani-project/xz-java/commit/107a519fac1e6789101ad9c234afe3dc407be7f5\"\u003e\u003ccode\u003e107a519\u003c/code\u003e\u003c/a\u003e Bump the version number to 1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/3061152e66a8ea2cc6366fd5da21409b8a3d4788\"\u003e\u003ccode\u003e3061152\u003c/code\u003e\u003c/a\u003e Update NEWS.md for 1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/0ecee25c1590dae305135317cf6e768f49093af7\"\u003e\u003ccode\u003e0ecee25\u003c/code\u003e\u003c/a\u003e Refactor EXTRA_SIZE to getExtraSize()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/ac1aeb197dd8589dc6892f13f5ef68801383ec34\"\u003e\u003ccode\u003eac1aeb1\u003c/code\u003e\u003c/a\u003e Fix ArrayIndexOutOfBoundsException in the LZMA/LZMA2 encoder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/12c75fd1d06ef7db89335d3da1ca5bb91ab6ac0b\"\u003e\u003ccode\u003e12c75fd\u003c/code\u003e\u003c/a\u003e Fix ArrayCache usage with LZMAInputStream\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/e52d9ad621afcaa422668484bad91ce7ba0506ef\"\u003e\u003ccode\u003ee52d9ad\u003c/code\u003e\u003c/a\u003e SHA256SUMS: Add 1.11 files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/9a755ec5335de00ce365b365b72e4683e591171f\"\u003e\u003ccode\u003e9a755ec\u003c/code\u003e\u003c/a\u003e CI: Add missing SPDX tags\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tukaani-project/xz-java/compare/v1.11...v1.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tools.jackson:jackson-bom` from 3.0.4 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/c2ea79e9178f0aaa5e4f381c644140357bfc307e\"\u003e\u003ccode\u003ec2ea79e\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3906b27dcdde8fc6a4fef193147109b70bf2f0dc\"\u003e\u003ccode\u003e3906b27\u003c/code\u003e\u003c/a\u003e Prep for 3.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/b17b616c7dc264cfef26f9dd28eaf54bc40b5c4c\"\u003e\u003ccode\u003eb17b616\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/36cf9995cff15aa3e69786da1d6c52f208fddf8a\"\u003e\u003ccode\u003e36cf999\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-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.0.4...jackson-bom-3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.ben-manes.caffeine:caffeine` from 3.2.0 to 3.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ben-manes/caffeine/releases\"\u003ecom.github.ben-manes.caffeine:caffeine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved access expiration's read performance by avoiding false sharing effects caused by the timestamp update\u003c/li\u003e\n\u003cli\u003eFixed head-of-line blocking of expiration queues caused by in-flight async entries (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed various minor issues found using AI audits\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://docs.oracle.com/en/java/javase/25/docs/api//java.base/java/io/ObjectInputFilter.html\"\u003eObjectInputFilter\u003c/a\u003e support to JCache\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.2.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed frequency tracking of weak keys to use the object's identity hash code (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1902\"\u003e#1902\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for underscores in \u003ccode\u003eCaffeineSpec\u003c/code\u003e when using numeric literals (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1890\"\u003e#1890\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the external api to no longer lock when querying for the maximum size or weighted size (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1897\"\u003e#1897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded detection and recovery when a custom \u003ccode\u003eCompletableFuture\u003c/code\u003e is in an inconsistent state (\u003ca href=\"https://redirect.github.com/quarkusio/quarkus/issues/50513\"\u003equarkus#50513\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.2.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed characteristics returned by Spliterators (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1883\"\u003e#1883\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.2.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e for an async cache's synchronous view to retry if incomplete\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eCaffeineSpec\u003c/code\u003e when being reflectively constructed (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1839\"\u003e#1839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the handling of negative durations with variable expiration\u003c/li\u003e\n\u003cli\u003eFixed intermittent null after replacing a weak/soft value (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1820\"\u003e#1820\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/ben-manes/caffeine/commit/836b65c0a83e5d1641ded9c6de578654bc04b2e9\"\u003e\u003ccode\u003e836b65c\u003c/code\u003e\u003c/a\u003e use a consistent expiration tolerance calculation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0dc7daf962730048fe46ae4626827afbb97ddf92\"\u003e\u003ccode\u003e0dc7daf\u003c/code\u003e\u003c/a\u003e resurrect in-flight async entries on expiration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0bac8b54fd634ffe95d35ccd1d94daba95e7b369\"\u003e\u003ccode\u003e0bac8b5\u003c/code\u003e\u003c/a\u003e handle head-of-line blocking of expiration queues (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/ff258366de0a89129152ead72524ce88f8fca67b\"\u003e\u003ccode\u003eff25836\u003c/code\u003e\u003c/a\u003e test polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f3a6176e2e3a7fe085214472858c6029c108fc3f\"\u003e\u003ccode\u003ef3a6176\u003c/code\u003e\u003c/a\u003e Fix JCache close/createCache races and recursive teardown\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/622fbe7dbf7606f114b956205706935be2fcf3c8\"\u003e\u003ccode\u003e622fbe7\u003c/code\u003e\u003c/a\u003e Fix removal in identity views and widen hill-climber counters\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/8da5a7a05d8b725c9dbd577be8ffaf2372aa7e23\"\u003e\u003ccode\u003e8da5a7a\u003c/code\u003e\u003c/a\u003e defer weighing the entry until after the putIfAbsent hit fast-path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/94ad0ff8556c9923a8d9746ab85af9ee830dd051\"\u003e\u003ccode\u003e94ad0ff\u003c/code\u003e\u003c/a\u003e Record eviction stats before notifying the removal listener consistently\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f94c0113d0c98dc0afaadf1f6748ea280aa4dff7\"\u003e\u003ccode\u003ef94c011\u003c/code\u003e\u003c/a\u003e Auto-assert eviction stats alongside notifications.withCause.exclusively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/2e945e090fbff4f96251dfe1bacba3780a5bdb0c\"\u003e\u003ccode\u003e2e945e0\u003c/code\u003e\u003c/a\u003e Skip timestamp writes within tolerance on the read path.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ben-manes/caffeine/compare/v3.2.0...v3.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.assertj:assertj-core` from 3.27.6 to 3.27.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assertj/assertj/releases\"\u003eorg.assertj:assertj-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.27.7\u003c/h2\u003e\n\u003ch2\u003e:lock: Security\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix XXE vulnerability in \u003ccode\u003eisXmlEqualTo\u003c/code\u003e assertion (CVE-2026-24400)\n\u003cul\u003e\n\u003cli\u003eSee GHSA-rqfh-9r24-8c9r for details; many thanks to \u003ca href=\"https://github.com/wxt201\"\u003e\u003ccode\u003e@​wxt201\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/Song-Li\"\u003e\u003ccode\u003e@​Song-Li\u003c/code\u003e\u003c/a\u003e for responsibly reporting it!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:no_entry_sign: Deprecated\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003eXmlStringPrettyFormatter\u003c/code\u003e with no replacement\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:bug: Bug Fixes\u003c/h2\u003e\n\u003ch3\u003eGuava\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNavigation to \u003ccode\u003eassertj-core\u003c/code\u003e or \u003ccode\u003eguava\u003c/code\u003e types from \u003ccode\u003eassertj-guava\u003c/code\u003e Javadoc site has unnecessary header \u003ca href=\"https://redirect.github.com/assertj/assertj/issues/3478\"\u003e#3478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Byte Buddy 1.18.3\u003c/li\u003e\n\u003cli\u003eUpgrade to JUnit BOM 5.14.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGuava\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Guava 33.5.0-jre\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/e84071667f5f8f13084af9dfa54cee5fd9db18db\"\u003e\u003ccode\u003ee840716\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release assertj-build-3.27.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/85ca7eb6609bb179c043b85ae7d290523b1ba79a\"\u003e\u003ccode\u003e85ca7eb\u003c/code\u003e\u003c/a\u003e Deprecate \u003ccode\u003eXmlStringPrettyFormatter\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/77081dc5eb107141df80f95bd0149b468e451341\"\u003e\u003ccode\u003e77081dc\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/b68fc24a9de28f28a486fc5b887c1b8a003a5823\"\u003e\u003ccode\u003eb68fc24\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4.31.9 to 4.31.10 in the github-actions group ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/0cf5bb6c50f6ead3deaa2a2ff50ef1e7d933c8a3\"\u003e\u003ccode\u003e0cf5bb6\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ekotlin.version\u003c/code\u003e from 2.1.0 to 2.2.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/d393ef1f5e48c89d47d7cf6d1eae359ceda0a126\"\u003e\u003ccode\u003ed393ef1\u003c/code\u003e\u003c/a\u003e Abort tests when symbolic links cannot be created (\u003ca href=\"https://redirect.github.com/assertj/assertj/issues/3788\"\u003e#3788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/22124331e9922af5a43ab50f7a9a25b65be53be1\"\u003e\u003ccode\u003e2212433\u003c/code\u003e\u003c/a\u003e Add IntelliJ custom inspection for test class names\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/5717d025cfe0f4c66de20f3253c0b0ecba259aa1\"\u003e\u003ccode\u003e5717d02\u003c/code\u003e\u003c/a\u003e Update JetBrains icon\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/a8ec20bd42ed01f9cc6f654046c7dd424b0af07c\"\u003e\u003ccode\u003ea8ec20b\u003c/code\u003e\u003c/a\u003e Add icon for JetBrains products\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/c05fb3d052b415fb2d6051df939f3b7903a76afe\"\u003e\u003ccode\u003ec05fb3d\u003c/code\u003e\u003c/a\u003e Bump Maven to 3.9.12 and Wrapper to 3.3.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/assertj/assertj/compare/assertj-build-3.27.6...assertj-build-3.27.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.2 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a...\n\n_Description has been truncated_","html_url":"https://github.com/BlindMint/booklore/pull/15","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlindMint%2Fbooklore/issues/15","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/15/packages"}},{"old_version":"3.5.7","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-05-22T03:12:50.000Z","version_change":"3.5.7 → 3.5.8","issue":{"uuid":"4499518853","node_id":"PR_kwDORprh4c7eL9QV","number":40,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 15 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-22T03:12:50.000Z","updated_at":"2026-05-22T03:17:36.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":15,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.1.1","new_version":"12.6.2"},{"name":"org.projectlombok:lombok","old_version":"1.18.44","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:jbig2-imageio","old_version":"3.0.4","new_version":"3.0.5"},{"name":"com.github.RouHim:jaudiotagger","old_version":"2.0.18","new_version":"2.0.21"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.6.0","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.7","new_version":"4.0.8"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.3","new_version":"3.2.4","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.3.0.Final","new_version":"7.3.5.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.5.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 15 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.1.1` | `12.6.2` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.44` | `1.18.46` |\n| org.apache.pdfbox:jbig2-imageio | `3.0.4` | `3.0.5` |\n| com.github.RouHim:jaudiotagger | `2.0.18` | `2.0.21` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.6.0` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.7` | `4.0.8` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.3` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.3` | `3.2.4` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.3.0.Final` | `7.3.5.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.5.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.1.1 to 12.6.2\n\nUpdates `org.projectlombok:lombok` from 1.18.44 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.44...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:jbig2-imageio` from 3.0.4 to 3.0.5\n\nUpdates `com.github.RouHim:jaudiotagger` from 2.0.18 to 2.0.21\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.6.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Gauthier Roebroeck, Robin Schimpf\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.10...v7.6.0\"\u003e7.6.0\u003c/a\u003e (2026-05-13)\u003c/h1\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esupport random access for files in solid RAR4 archives (\u003ca href=\"https://github.com/junrar/junrar/commits/e0874d2\"\u003ee0874d2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🏎 Perf\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereplace RarCRC.checkCrc with java.util.zip.CRC32 (\u003ca href=\"https://github.com/junrar/junrar/commits/5270d23\"\u003e5270d23\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump gradle-wrapper to 9.5.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/cb4b7fd\"\u003ecb4b7fd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/0bb56b3\"\u003e0bb56b3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/ca621b2\"\u003eca621b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.23.0 to 1.24.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/90f0548\"\u003e90f0548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump commons-io:commons-io from 2.21.0 to 2.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/83a5d08\"\u003e83a5d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.github.ben-manes.versions from 0.53.0 to 0.54.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d5abcdb\"\u003ed5abcdb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ereplace deprecated action (\u003ca href=\"https://github.com/junrar/junrar/commits/338efcb\"\u003e338efcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\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/junrar/junrar/commit/cb4b7fdb84269e95741fa22120e08ceb15a06152\"\u003e\u003ccode\u003ecb4b7fd\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper to 9.5.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/0bb56b3df4e3b6d14f73de92746a2eb47dd2d7a3\"\u003e\u003ccode\u003e0bb56b3\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/ca621b22421f9e846df23112b32113230610c8d9\"\u003e\u003ccode\u003eca621b2\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/e0874d213832bbeaa8eb265c79479b01b5fa7392\"\u003e\u003ccode\u003ee0874d2\u003c/code\u003e\u003c/a\u003e feat: support random access for files in solid RAR4 archives\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/90f0548c728b0bf2e94f6e26f9e6396d9d0a7262\"\u003e\u003ccode\u003e90f0548\u003c/code\u003e\u003c/a\u003e build(deps): bump org.jreleaser from 1.23.0 to 1.24.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/83a5d085dc84991226229fef1515cc902d129241\"\u003e\u003ccode\u003e83a5d08\u003c/code\u003e\u003c/a\u003e build(deps): bump commons-io:commons-io from 2.21.0 to 2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/338efcb5472be051989fbafd7179d561c71722eb\"\u003e\u003ccode\u003e338efcb\u003c/code\u003e\u003c/a\u003e ci: replace deprecated action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/5270d235ade54d96dfc9958ab06f495fbbd169e7\"\u003e\u003ccode\u003e5270d23\u003c/code\u003e\u003c/a\u003e perf: replace RarCRC.checkCrc with java.util.zip.CRC32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d5abcdb9af988ddfa76e98d80787e15525488332\"\u003e\u003ccode\u003ed5abcdb\u003c/code\u003e\u003c/a\u003e build(deps): bump com.github.ben-manes.versions from 0.53.0 to 0.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/edadb28896962fdcf754029bafd0994aaff24530\"\u003e\u003ccode\u003eedadb28\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.10 [skip ci]\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.7 to 4.0.8\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/c2ea79e9178f0aaa5e4f381c644140357bfc307e\"\u003e\u003ccode\u003ec2ea79e\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3906b27dcdde8fc6a4fef193147109b70bf2f0dc\"\u003e\u003ccode\u003e3906b27\u003c/code\u003e\u003c/a\u003e Prep for 3.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/b17b616c7dc264cfef26f9dd28eaf54bc40b5c4c\"\u003e\u003ccode\u003eb17b616\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/36cf9995cff15aa3e69786da1d6c52f208fddf8a\"\u003e\u003ccode\u003e36cf999\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-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.ben-manes.caffeine:caffeine` from 3.2.3 to 3.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ben-manes/caffeine/releases\"\u003ecom.github.ben-manes.caffeine:caffeine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved access expiration's read performance by avoiding false sharing effects caused by the timestamp update\u003c/li\u003e\n\u003cli\u003eFixed head-of-line blocking of expiration queues caused by in-flight async entries (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed various minor issues found using AI audits\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://docs.oracle.com/en/java/javase/25/docs/api//java.base/java/io/ObjectInputFilter.html\"\u003eObjectInputFilter\u003c/a\u003e support to JCache\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/836b65c0a83e5d1641ded9c6de578654bc04b2e9\"\u003e\u003ccode\u003e836b65c\u003c/code\u003e\u003c/a\u003e use a consistent expiration tolerance calculation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0dc7daf962730048fe46ae4626827afbb97ddf92\"\u003e\u003ccode\u003e0dc7daf\u003c/code\u003e\u003c/a\u003e resurrect in-flight async entries on expiration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0bac8b54fd634ffe95d35ccd1d94daba95e7b369\"\u003e\u003ccode\u003e0bac8b5\u003c/code\u003e\u003c/a\u003e handle head-of-line blocking of expiration queues (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/ff258366de0a89129152ead72524ce88f8fca67b\"\u003e\u003ccode\u003eff25836\u003c/code\u003e\u003c/a\u003e test polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f3a6176e2e3a7fe085214472858c6029c108fc3f\"\u003e\u003ccode\u003ef3a6176\u003c/code\u003e\u003c/a\u003e Fix JCache close/createCache races and recursive teardown\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/622fbe7dbf7606f114b956205706935be2fcf3c8\"\u003e\u003ccode\u003e622fbe7\u003c/code\u003e\u003c/a\u003e Fix removal in identity views and widen hill-climber counters\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/8da5a7a05d8b725c9dbd577be8ffaf2372aa7e23\"\u003e\u003ccode\u003e8da5a7a\u003c/code\u003e\u003c/a\u003e defer weighing the entry until after the putIfAbsent hit fast-path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/94ad0ff8556c9923a8d9746ab85af9ee830dd051\"\u003e\u003ccode\u003e94ad0ff\u003c/code\u003e\u003c/a\u003e Record eviction stats before notifying the removal listener consistently\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f94c0113d0c98dc0afaadf1f6748ea280aa4dff7\"\u003e\u003ccode\u003ef94c011\u003c/code\u003e\u003c/a\u003e Auto-assert eviction stats alongside notifications.withCause.exclusively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/2e945e090fbff4f96251dfe1bacba3780a5bdb0c\"\u003e\u003ccode\u003e2e945e0\u003c/code\u003e\u003c/a\u003e Skip timestamp writes within tolerance on the read path.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ben-manes/caffeine/compare/v3.2.3...v3.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.3.0.Final to 7.3.5.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 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.0...v9.5.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/Owemeone/grimmory/pull/40","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Owemeone%2Fgrimmory/issues/40","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/40/packages"}},{"old_version":"3.5.7","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-05-08T03:12:00.000Z","version_change":"3.5.7 → 3.5.8","issue":{"uuid":"4403511891","node_id":"PR_kwDORvJjTc7ZYe1x","number":26,"state":"closed","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 17 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-05-22T03:12:36.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-08T03:12:00.000Z","updated_at":"2026-05-22T03:12:38.000Z","time_to_close":1209636,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":17,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.0.3","new_version":"12.5.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"com.github.RouHim:jaudiotagger","old_version":"2.0.16","new_version":"2.0.19"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.6","new_version":"4.0.8"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.3","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.3","new_version":"3.2.4","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.6.Final","new_version":"7.3.3.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 15 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.0.3` | `12.5.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| com.github.RouHim:jaudiotagger | `2.0.16` | `2.0.19` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.6` | `4.0.8` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.3` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.3` | `3.2.4` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.2.6.Final` | `7.3.3.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.5.0` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.0.3 to 12.5.0\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `com.github.RouHim:jaudiotagger` from 2.0.16 to 2.0.19\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.6 to 4.0.8\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/c2ea79e9178f0aaa5e4f381c644140357bfc307e\"\u003e\u003ccode\u003ec2ea79e\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3906b27dcdde8fc6a4fef193147109b70bf2f0dc\"\u003e\u003ccode\u003e3906b27\u003c/code\u003e\u003c/a\u003e Prep for 3.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/b17b616c7dc264cfef26f9dd28eaf54bc40b5c4c\"\u003e\u003ccode\u003eb17b616\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/36cf9995cff15aa3e69786da1d6c52f208fddf8a\"\u003e\u003ccode\u003e36cf999\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-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.ben-manes.caffeine:caffeine` from 3.2.3 to 3.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ben-manes/caffeine/releases\"\u003ecom.github.ben-manes.caffeine:caffeine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved access expiration's read performance by avoiding false sharing effects caused by the timestamp update\u003c/li\u003e\n\u003cli\u003eFixed head-of-line blocking of expiration queues caused by in-flight async entries (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed various minor issues found using AI audits\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://docs.oracle.com/en/java/javase/25/docs/api//java.base/java/io/ObjectInputFilter.html\"\u003eObjectInputFilter\u003c/a\u003e support to JCache\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/836b65c0a83e5d1641ded9c6de578654bc04b2e9\"\u003e\u003ccode\u003e836b65c\u003c/code\u003e\u003c/a\u003e use a consistent expiration tolerance calculation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0dc7daf962730048fe46ae4626827afbb97ddf92\"\u003e\u003ccode\u003e0dc7daf\u003c/code\u003e\u003c/a\u003e resurrect in-flight async entries on expiration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0bac8b54fd634ffe95d35ccd1d94daba95e7b369\"\u003e\u003ccode\u003e0bac8b5\u003c/code\u003e\u003c/a\u003e handle head-of-line blocking of expiration queues (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1954\"\u003e#1954\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/ff258366de0a89129152ead72524ce88f8fca67b\"\u003e\u003ccode\u003eff25836\u003c/code\u003e\u003c/a\u003e test polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f3a6176e2e3a7fe085214472858c6029c108fc3f\"\u003e\u003ccode\u003ef3a6176\u003c/code\u003e\u003c/a\u003e Fix JCache close/createCache races and recursive teardown\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/622fbe7dbf7606f114b956205706935be2fcf3c8\"\u003e\u003ccode\u003e622fbe7\u003c/code\u003e\u003c/a\u003e Fix removal in identity views and widen hill-climber counters\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/8da5a7a05d8b725c9dbd577be8ffaf2372aa7e23\"\u003e\u003ccode\u003e8da5a7a\u003c/code\u003e\u003c/a\u003e defer weighing the entry until after the putIfAbsent hit fast-path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/94ad0ff8556c9923a8d9746ab85af9ee830dd051\"\u003e\u003ccode\u003e94ad0ff\u003c/code\u003e\u003c/a\u003e Record eviction stats before notifying the removal listener consistently\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/f94c0113d0c98dc0afaadf1f6748ea280aa4dff7\"\u003e\u003ccode\u003ef94c011\u003c/code\u003e\u003c/a\u003e Auto-assert eviction stats alongside notifications.withCause.exclusively\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/2e945e090fbff4f96251dfe1bacba3780a5bdb0c\"\u003e\u003ccode\u003e2e945e0\u003c/code\u003e\u003c/a\u003e Skip timestamp writes within tolerance on the read path.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ben-manes/caffeine/compare/v3.2.3...v3.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.2.6.Final to 7.3.3.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 to 9.5.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.5.0\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.5.0.\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.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/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.0 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.5.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.5.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.5.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.5.0 RC4\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/3fe117d68f3907790f3809f121aa36303a9151f8\"\u003e\u003ccode\u003e3fe117d\u003c/code\u003e\u003c/a\u003e Update jdks.yaml (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37703\"\u003e#37703\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/33d145af6fbe7cf7c9d84646b6d7f32fea91d5e2\"\u003e\u003ccode\u003e33d145a\u003c/code\u003e\u003c/a\u003e Update jdks.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7a05d1ed48442eb5da4d6e2b6593da55cdec1da\"\u003e\u003ccode\u003ef7a05d1\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37654\"\u003e#37654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/266facdcbcb0b4c60120cc118eaf0f652bfcdfe5\"\u003e\u003ccode\u003e266facd\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0ad6dd8e143455707e444aa7e3d38327a3366513\"\u003e\u003ccode\u003e0ad6dd8\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37646\"\u003e#37646\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/966025d5850d46c9158a2f25e4096222277ecf57\"\u003e\u003ccode\u003e966025d\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e7455734449e422accebf44cf7b31bf93e3a770c\"\u003e\u003ccode\u003ee745573\u003c/code\u003e\u003c/a\u003e Polish IP docs (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37642\"\u003e#37642\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/d5cfd079acd2c8f1182edd6ec23dbab571132d0a\"\u003e\u003ccode\u003ed5cfd07\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37629\"\u003e#37629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/acdf0c36fa13ba09a7ff5b51f79b9af4b1a097ee\"\u003e\u003ccode\u003eacdf0c3\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7d0e4f6f7896426a8b24091388e4c252b62faef\"\u003e\u003ccode\u003ef7d0e4f\u003c/code\u003e\u003c/a\u003e Rename anchor\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.0...v9.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cdome/ollumi/pull/26","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdome%2Follumi/issues/26","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/26/packages"}},{"old_version":"3.5.5","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-05-06T11:58:09.000Z","version_change":"3.5.5 → 3.5.8","issue":{"uuid":"4391129491","node_id":"PR_kwDOBQcfMM7YwMSb","number":79,"state":"closed","title":"Bump the build-dependencies group across 1 directory with 46 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-07T22:30:52.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-06T11:58:09.000Z","updated_at":"2026-05-07T22:30:53.000Z","time_to_close":124363,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"build-dependencies","update_count":46,"packages":[{"name":"com.gradle.develocity","old_version":"4.3.2","new_version":"4.4.1"},{"name":"com.gradle.common-custom-user-data-gradle-plugin","old_version":"2.4.0","new_version":"2.6.0"},{"name":"org.checkerframework:checker-qual-android","old_version":"3.53.1","new_version":"4.1.0","repository_url":"https://github.com/typetools/checker-framework"},{"name":"org.checkerframework:checker","old_version":"3.53.1","new_version":"4.1.0","repository_url":"https://github.com/typetools/checker-framework"},{"name":"org.ehcache:ehcache","old_version":"3.11.1","new_version":"3.12.0","repository_url":"https://github.com/ehcache/ehcache3"},{"name":"org.junit.jupiter:junit-jupiter","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-api","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-engine","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-params","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.platform:junit-platform-launcher","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"ch.qos.logback:logback-classic","old_version":"1.5.18","new_version":"1.5.32","repository_url":"https://github.com/qos-ch/logback"},{"name":"org.jboss.byteman:byteman-bmunit","old_version":"4.0.24","new_version":"4.0.26"},{"name":"org.mockito:mockito-core","old_version":"5.20.0","new_version":"5.23.0","repository_url":"https://github.com/mockito/mockito"},{"name":"org.mockito:mockito-junit-jupiter","old_version":"5.20.0","new_version":"5.23.0","repository_url":"https://github.com/mockito/mockito"},{"name":"org.jboss.weld.se:weld-se-shaded","old_version":"6.0.3.Final","new_version":"6.0.4.Final"},{"name":"org.dom4j:dom4j","old_version":"2.1.3","new_version":"2.2.0","repository_url":"https://github.com/dom4j/dom4j"},{"name":"org.orbisgis:h2gis","old_version":"2.2.4","new_version":"2.2.5","repository_url":"https://github.com/orbisgis/H2GIS"},{"name":"org.postgresql:postgresql","old_version":"42.7.8","new_version":"42.7.11","repository_url":"https://github.com/pgjdbc/pgjdbc"},{"name":"com.enterprisedb:edb-jdbc","old_version":"42.7.3.3","new_version":"42.7.3.4","repository_url":"https://github.com/EnterpriseDB/edb-jdbc"},{"name":"com.mysql:mysql-connector-j","old_version":"9.6.0","new_version":"9.7.0","repository_url":"https://github.com/mysql/mysql-connector-j"},{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.5","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"com.oracle.database.jdbc:ojdbc-provider-jackson-oson","old_version":"1.0.4","new_version":"1.0.6","repository_url":"https://github.com/oracle/ojdbc-extensions"},{"name":"com.microsoft.sqlserver:mssql-jdbc","old_version":"13.2.1.jre11","new_version":"13.4.0.jre11","repository_url":"https://github.com/Microsoft/mssql-jdbc"},{"name":"com.ibm.db2:jcc","old_version":"12.1.3.0","new_version":"12.1.4.0"},{"name":"com.sap.cloud.db.jdbc:ngdbc","old_version":"2.26.11","new_version":"2.28.7"},{"name":"com.teradata.jdbc:terajdbc","old_version":"20.00.00.51","new_version":"20.00.00.54","repository_url":"https://github.com/Teradata/jdbc-driver"},{"name":"com.ibm.informix:jdbc","old_version":"15.0.0.2","new_version":"15.0.1.1"},{"name":"org.firebirdsql.jdbc:jaybird","old_version":"6.0.3","new_version":"6.0.5","repository_url":"https://github.com/FirebirdSQL/jaybird"},{"name":"com.altibase:altibase-jdbc","old_version":"7.3.0.1.1","new_version":"8.1.0.0.1"},{"name":"com.google.cloud:google-cloud-spanner-jdbc","old_version":"2.35.5","new_version":"2.38.0","repository_url":"https://github.com/googleapis/google-cloud-java"},{"name":"org.apache.maven:maven-core","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-artifact","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-embedder","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-compat","old_version":"3.9.14","new_version":"3.9.15","repository_url":"https://github.com/apache/maven"},{"name":"org.apache.maven.plugin-tools:maven-plugin-tools-annotations","old_version":"3.15.1","new_version":"3.15.2","repository_url":"https://github.com/apache/maven-plugin-tools"},{"name":"org.apache.maven.resolver:maven-resolver-transport-http","old_version":"1.9.24","new_version":"1.9.27"},{"name":"org.apache.maven.resolver:maven-resolver-connector-basic","old_version":"1.9.24","new_version":"1.9.27","repository_url":"https://github.com/apache/maven-resolver"},{"name":"de.thetaphi:forbiddenapis","old_version":"3.8","new_version":"3.10"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.asciidoctor:asciidoctorj","old_version":"3.0.0","new_version":"3.0.1","repository_url":"https://github.com/asciidoctor/asciidoctorj"},{"name":"com.diffplug.spotless","old_version":"8.3.0","new_version":"8.4.0"},{"name":"com.gradle.plugin-publish","old_version":"2.0.0","new_version":"2.1.1"},{"name":"org.jetbrains.kotlin.jvm","old_version":"2.0.20","new_version":"2.3.21"},{"name":"biz.aQute.bnd","old_version":"7.2.1","new_version":"7.2.3"},{"name":"biz.aQute.bnd.builder","old_version":"7.2.1","new_version":"7.2.3"}],"path":null,"ecosystem":"maven"},"body":"Bumps the build-dependencies group with 46 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.gradle.develocity | `4.3.2` | `4.4.1` |\n| com.gradle.common-custom-user-data-gradle-plugin | `2.4.0` | `2.6.0` |\n| [org.checkerframework:checker-qual-android](https://github.com/typetools/checker-framework) | `3.53.1` | `4.1.0` |\n| [org.checkerframework:checker](https://github.com/typetools/checker-framework) | `3.53.1` | `4.1.0` |\n| [org.ehcache:ehcache](https://github.com/ehcache/ehcache3) | `3.11.1` | `3.12.0` |\n| [org.junit.jupiter:junit-jupiter](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-params](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.platform:junit-platform-launcher](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) | `1.5.18` | `1.5.32` |\n| org.jboss.byteman:byteman-bmunit | `4.0.24` | `4.0.26` |\n| [org.mockito:mockito-core](https://github.com/mockito/mockito) | `5.20.0` | `5.23.0` |\n| [org.mockito:mockito-junit-jupiter](https://github.com/mockito/mockito) | `5.20.0` | `5.23.0` |\n| org.jboss.weld.se:weld-se-shaded | `6.0.3.Final` | `6.0.4.Final` |\n| [org.dom4j:dom4j](https://github.com/dom4j/dom4j) | `2.1.3` | `2.2.0` |\n| [org.orbisgis:h2gis](https://github.com/orbisgis/H2GIS) | `2.2.4` | `2.2.5` |\n| [org.postgresql:postgresql](https://github.com/pgjdbc/pgjdbc) | `42.7.8` | `42.7.11` |\n| [com.enterprisedb:edb-jdbc](https://github.com/EnterpriseDB/edb-jdbc) | `42.7.3.3` | `42.7.3.4` |\n| [com.mysql:mysql-connector-j](https://github.com/mysql/mysql-connector-j) | `9.6.0` | `9.7.0` |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.5` | `3.5.8` |\n| [com.oracle.database.jdbc:ojdbc-provider-jackson-oson](https://github.com/oracle/ojdbc-extensions) | `1.0.4` | `1.0.6` |\n| [com.microsoft.sqlserver:mssql-jdbc](https://github.com/Microsoft/mssql-jdbc) | `13.2.1.jre11` | `13.4.0.jre11` |\n| com.ibm.db2:jcc | `12.1.3.0` | `12.1.4.0` |\n| com.sap.cloud.db.jdbc:ngdbc | `2.26.11` | `2.28.7` |\n| [com.teradata.jdbc:terajdbc](https://github.com/Teradata/jdbc-driver) | `20.00.00.51` | `20.00.00.54` |\n| com.ibm.informix:jdbc | `15.0.0.2` | `15.0.1.1` |\n| [org.firebirdsql.jdbc:jaybird](https://github.com/FirebirdSQL/jaybird) | `6.0.3` | `6.0.5` |\n| com.altibase:altibase-jdbc | `7.3.0.1.1` | `8.1.0.0.1` |\n| [com.google.cloud:google-cloud-spanner-jdbc](https://github.com/googleapis/google-cloud-java) | `2.35.5` | `2.38.0` |\n| org.apache.maven:maven-core | `3.9.14` | `3.9.15` |\n| org.apache.maven:maven-artifact | `3.9.14` | `3.9.15` |\n| org.apache.maven:maven-embedder | `3.9.14` | `3.9.15` |\n| [org.apache.maven:maven-compat](https://github.com/apache/maven) | `3.9.14` | `3.9.15` |\n| [org.apache.maven.plugin-tools:maven-plugin-tools-annotations](https://github.com/apache/maven-plugin-tools) | `3.15.1` | `3.15.2` |\n| org.apache.maven.resolver:maven-resolver-transport-http | `1.9.24` | `1.9.27` |\n| [org.apache.maven.resolver:maven-resolver-connector-basic](https://github.com/apache/maven-resolver) | `1.9.24` | `1.9.27` |\n| de.thetaphi:forbiddenapis | `3.8` | `3.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.asciidoctor:asciidoctorj](https://github.com/asciidoctor/asciidoctorj) | `3.0.0` | `3.0.1` |\n| com.diffplug.spotless | `8.3.0` | `8.4.0` |\n| com.gradle.plugin-publish | `2.0.0` | `2.1.1` |\n| org.jetbrains.kotlin.jvm | `2.0.20` | `2.3.21` |\n| biz.aQute.bnd | `7.2.1` | `7.2.3` |\n| biz.aQute.bnd.builder | `7.2.1` | `7.2.3` |\n\n\nUpdates `com.gradle.develocity` from 4.3.2 to 4.4.1\n\nUpdates `com.gradle.common-custom-user-data-gradle-plugin` from 2.4.0 to 2.6.0\n\nUpdates `org.checkerframework:checker-qual-android` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker-qual-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker-qual-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.checkerframework:checker` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.checkerframework:checker` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.ehcache:ehcache` from 3.11.1 to 3.12.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/f4a96f47758e8d0bbe3de81c371bdbb33d620b88\"\u003e\u003ccode\u003ef4a96f4\u003c/code\u003e\u003c/a\u003e Set ehcacheVersion to 3.12.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/ae90183364e2b67e5bc07c01be6f055b0d193099\"\u003e\u003ccode\u003eae90183\u003c/code\u003e\u003c/a\u003e TDB-20139 restore sonatype deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/bc9309ba47ad255872017ca71ba29240d1800c17\"\u003e\u003ccode\u003ebc9309b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3318\"\u003e#3318\u003c/a\u003e from ehcache/upgrade/master\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/2754c27f3bd53d620d8f4837c7c9e33337cc7c11\"\u003e\u003ccode\u003e2754c27\u003c/code\u003e\u003c/a\u003e CVE-2025-67030: Update plexus-utils to 3.6.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/87270e4b3b93742c8e3e5dcae733ee1f10f4ad6e\"\u003e\u003ccode\u003e87270e4\u003c/code\u003e\u003c/a\u003e CVE-2026-1605: Update Jetty to 12.1.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/0be598f1212d72f003700153f8faccebc09effc2\"\u003e\u003ccode\u003e0be598f\u003c/code\u003e\u003c/a\u003e Ignoring CVE-2025-67030\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/59cc21116254b6b1b5970b79272f0b3abfbc6808\"\u003e\u003ccode\u003e59cc211\u003c/code\u003e\u003c/a\u003e Upgrade platform and core\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/2badca4e5a7bb3039ae7521e83c6bf114655cf74\"\u003e\u003ccode\u003e2badca4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3311\"\u003e#3311\u003c/a\u003e from aurbroszniowski/TDB-19854-upgrade-dependencies-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/d532bbce9f72a1e253c4df1fbe6230a96b1e953c\"\u003e\u003ccode\u003ed532bbc\u003c/code\u003e\u003c/a\u003e TDB-19854\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/b6df7aac037d55ee350d242d9b6edd69f6913dbc\"\u003e\u003ccode\u003eb6df7aa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3310\"\u003e#3310\u003c/a\u003e from ehcache/platform-5.11.6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ehcache/ehcache3/compare/v3.11.1...v3.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-api` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-api's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-engine` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-params` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-params's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\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.1 to 6.0.3\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.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-api` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-api's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-engine` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-params` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-params's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\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.1 to 6.0.3\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.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.platform:junit-platform-launcher` from 6.0.1 to 6.0.3\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.platform:junit-platform-launcher's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ch.qos.logback:logback-classic` from 1.5.18 to 1.5.32\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qos-ch/logback/releases\"\u003ech.qos.logback:logback-classic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eLogback 1.5.32\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-16 Release of logback version 1.5.32\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In \u003ccode\u003eDefaultProcessor, \u003c/code\u003efixed incorrect check for dependencies contained within a parent model. Previous only the direct children were scanned. This fixes \u003ca href=\"https://redirect.github.com/qos-ch/logback-access/issues/34\"\u003elogback-access/issues/34\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit e807335a67535b4eacce94e942c0bcb649665d93 associated with the tag v_1.5.32. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback  1.5.31\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-14 Release of logback version 1.5.31\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Fixed missing META-INF/services directory in logback-classic.jar. This issue rendered logback-classic version 1.5.30 unusable with SLF4J.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit 168e42f9f9a18a3ffdf31eb2bfe80a71e33ecd8b associated with the tag v_1.5.31. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.30\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-14 Release of logback  version 1.5.30\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• \u003cstrong\u003eIn this version, logback-classic.jar was missing the META-INF/services directory, making it unusable with SLF4J. Version 1.5.31 (released later on the same day) fixes this issue.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Fix scanning issue when an included file becomes available at a later time. This problem was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1021\"\u003eissues/1021\u003c/a\u003e by Sergey Nazarov.\u003c/p\u003e\n\u003cp\u003e• Standardized code for version checking across modules.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit 44164f10ca3fb44ce0e68519f13564b87e3aca61 associated with the tag v_1.5.30. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.29\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-09 Release of logback version 1.5.29\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In response to \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1017\"\u003eissues/1017\u003c/a\u003e, appender names and appender references are once again subject to variable substitution, reverting the change introduced in version 1.5.28.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.28\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-06 Release of logback version 1.5.28\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Appender names or appender references are no longer subject to variable substitution.\u003c/p\u003e\n\u003cp\u003e• Fixed issue with configurations with conditionals encompassing appenders. This was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1016\"\u003eissues/1016\u003c/a\u003e reported by Sergey Sazonov.\u003c/p\u003e\n\u003cp\u003e• The \u003c!-- raw HTML omitted --\u003e element now admits a 'scan' attribute which can be used to override the 'scan' attribute in the \u003c!-- raw HTML omitted --\u003e element.\u003c/p\u003e\n\u003cp\u003e• Fixed NullPointerException thrown by VersionUtil.checkForVersionEquality method occurring with GraalVM Native Images. This issue was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1014\"\u003eissues/1014\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit e7a1855ab562bb102333f754603ff89359bf3cfc associated with the tag v_1.5.28. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.27\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-01-30 Release of logback version 1.5.27\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Updated license to Eclipse Public License version 2.0 from version 1.0, retaining the GPL 2.1 dual-license.\u003c/p\u003e\n\u003cp\u003e• Fixed missing MDC data transmitted by \u003ccode\u003eSocketAppender\u003c/code\u003e reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1010\"\u003eissues/1010\u003c/a\u003e by Lars Vogel.\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/qos-ch/logback/commit/e807335a67535b4eacce94e942c0bcb649665d93\"\u003e\u003ccode\u003ee807335\u003c/code\u003e\u003c/a\u003e prepare release 1.5.32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https:...\n\n_Description has been truncated_","html_url":"https://github.com/marko-bekhta/hibernate-orm/pull/79","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/marko-bekhta%2Fhibernate-orm/issues/79","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/79/packages"}},{"old_version":"3.5.5","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-05-06T11:06:24.000Z","version_change":"3.5.5 → 3.5.8","issue":{"uuid":"4390841867","node_id":"PR_kwDOAA6qDM7YvP0h","number":12330,"state":"closed","title":"Bump the build-dependencies group across 1 directory with 46 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-07T00:53:52.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-06T11:06:24.000Z","updated_at":"2026-05-07T00:53:54.000Z","time_to_close":49648,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"build-dependencies","update_count":46,"packages":[{"name":"com.gradle.develocity","old_version":"4.3.2","new_version":"4.4.1"},{"name":"com.gradle.common-custom-user-data-gradle-plugin","old_version":"2.4.0","new_version":"2.6.0"},{"name":"org.checkerframework:checker-qual-android","old_version":"3.53.1","new_version":"4.1.0","repository_url":"https://github.com/typetools/checker-framework"},{"name":"org.checkerframework:checker","old_version":"3.53.1","new_version":"4.1.0","repository_url":"https://github.com/typetools/checker-framework"},{"name":"org.ehcache:ehcache","old_version":"3.11.1","new_version":"3.12.0","repository_url":"https://github.com/ehcache/ehcache3"},{"name":"org.junit.jupiter:junit-jupiter","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-api","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-engine","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.jupiter:junit-jupiter-params","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.vintage:junit-vintage-engine","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"org.junit.platform:junit-platform-launcher","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/junit-team/junit-framework"},{"name":"ch.qos.logback:logback-classic","old_version":"1.5.18","new_version":"1.5.32","repository_url":"https://github.com/qos-ch/logback"},{"name":"org.jboss.byteman:byteman-bmunit","old_version":"4.0.24","new_version":"4.0.26"},{"name":"org.mockito:mockito-core","old_version":"5.20.0","new_version":"5.23.0","repository_url":"https://github.com/mockito/mockito"},{"name":"org.mockito:mockito-junit-jupiter","old_version":"5.20.0","new_version":"5.23.0","repository_url":"https://github.com/mockito/mockito"},{"name":"org.jboss.weld.se:weld-se-shaded","old_version":"6.0.3.Final","new_version":"6.0.4.Final"},{"name":"org.dom4j:dom4j","old_version":"2.1.3","new_version":"2.2.0","repository_url":"https://github.com/dom4j/dom4j"},{"name":"org.orbisgis:h2gis","old_version":"2.2.4","new_version":"2.2.5","repository_url":"https://github.com/orbisgis/H2GIS"},{"name":"org.postgresql:postgresql","old_version":"42.7.8","new_version":"42.7.11","repository_url":"https://github.com/pgjdbc/pgjdbc"},{"name":"com.enterprisedb:edb-jdbc","old_version":"42.7.3.3","new_version":"42.7.3.4","repository_url":"https://github.com/EnterpriseDB/edb-jdbc"},{"name":"com.mysql:mysql-connector-j","old_version":"9.6.0","new_version":"9.7.0","repository_url":"https://github.com/mysql/mysql-connector-j"},{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.5","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"com.oracle.database.jdbc:ojdbc-provider-jackson-oson","old_version":"1.0.4","new_version":"1.0.6","repository_url":"https://github.com/oracle/ojdbc-extensions"},{"name":"com.microsoft.sqlserver:mssql-jdbc","old_version":"13.2.1.jre11","new_version":"13.4.0.jre11","repository_url":"https://github.com/Microsoft/mssql-jdbc"},{"name":"com.ibm.db2:jcc","old_version":"12.1.3.0","new_version":"12.1.4.0"},{"name":"com.sap.cloud.db.jdbc:ngdbc","old_version":"2.26.11","new_version":"2.28.7"},{"name":"com.teradata.jdbc:terajdbc","old_version":"20.00.00.51","new_version":"20.00.00.54","repository_url":"https://github.com/Teradata/jdbc-driver"},{"name":"com.ibm.informix:jdbc","old_version":"15.0.0.2","new_version":"15.0.1.1"},{"name":"org.firebirdsql.jdbc:jaybird","old_version":"6.0.3","new_version":"6.0.5","repository_url":"https://github.com/FirebirdSQL/jaybird"},{"name":"com.altibase:altibase-jdbc","old_version":"7.3.0.1.1","new_version":"8.1.0.0.1"},{"name":"com.google.cloud:google-cloud-spanner-jdbc","old_version":"2.35.5","new_version":"2.38.0","repository_url":"https://github.com/googleapis/google-cloud-java"},{"name":"org.apache.maven:maven-core","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-artifact","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-embedder","old_version":"3.9.14","new_version":"3.9.15"},{"name":"org.apache.maven:maven-compat","old_version":"3.9.14","new_version":"3.9.15","repository_url":"https://github.com/apache/maven"},{"name":"org.apache.maven.plugin-tools:maven-plugin-tools-annotations","old_version":"3.15.1","new_version":"3.15.2","repository_url":"https://github.com/apache/maven-plugin-tools"},{"name":"org.apache.maven.resolver:maven-resolver-transport-http","old_version":"1.9.24","new_version":"1.9.27"},{"name":"org.apache.maven.resolver:maven-resolver-connector-basic","old_version":"1.9.24","new_version":"1.9.27","repository_url":"https://github.com/apache/maven-resolver"},{"name":"de.thetaphi:forbiddenapis","old_version":"3.8","new_version":"3.10"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.asciidoctor:asciidoctorj","old_version":"3.0.0","new_version":"3.0.1","repository_url":"https://github.com/asciidoctor/asciidoctorj"},{"name":"com.diffplug.spotless","old_version":"8.3.0","new_version":"8.4.0"},{"name":"com.gradle.plugin-publish","old_version":"2.0.0","new_version":"2.1.1"},{"name":"org.jetbrains.kotlin.jvm","old_version":"2.0.20","new_version":"2.3.21"},{"name":"biz.aQute.bnd","old_version":"7.2.1","new_version":"7.2.3"},{"name":"biz.aQute.bnd.builder","old_version":"7.2.1","new_version":"7.2.3"}],"path":null,"ecosystem":"maven"},"body":"Bumps the build-dependencies group with 46 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| com.gradle.develocity | `4.3.2` | `4.4.1` |\n| com.gradle.common-custom-user-data-gradle-plugin | `2.4.0` | `2.6.0` |\n| [org.checkerframework:checker-qual-android](https://github.com/typetools/checker-framework) | `3.53.1` | `4.1.0` |\n| [org.checkerframework:checker](https://github.com/typetools/checker-framework) | `3.53.1` | `4.1.0` |\n| [org.ehcache:ehcache](https://github.com/ehcache/ehcache3) | `3.11.1` | `3.12.0` |\n| [org.junit.jupiter:junit-jupiter](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.jupiter:junit-jupiter-params](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [org.junit.platform:junit-platform-launcher](https://github.com/junit-team/junit-framework) | `6.0.1` | `6.0.3` |\n| [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) | `1.5.18` | `1.5.32` |\n| org.jboss.byteman:byteman-bmunit | `4.0.24` | `4.0.26` |\n| [org.mockito:mockito-core](https://github.com/mockito/mockito) | `5.20.0` | `5.23.0` |\n| [org.mockito:mockito-junit-jupiter](https://github.com/mockito/mockito) | `5.20.0` | `5.23.0` |\n| org.jboss.weld.se:weld-se-shaded | `6.0.3.Final` | `6.0.4.Final` |\n| [org.dom4j:dom4j](https://github.com/dom4j/dom4j) | `2.1.3` | `2.2.0` |\n| [org.orbisgis:h2gis](https://github.com/orbisgis/H2GIS) | `2.2.4` | `2.2.5` |\n| [org.postgresql:postgresql](https://github.com/pgjdbc/pgjdbc) | `42.7.8` | `42.7.11` |\n| [com.enterprisedb:edb-jdbc](https://github.com/EnterpriseDB/edb-jdbc) | `42.7.3.3` | `42.7.3.4` |\n| [com.mysql:mysql-connector-j](https://github.com/mysql/mysql-connector-j) | `9.6.0` | `9.7.0` |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.5` | `3.5.8` |\n| [com.oracle.database.jdbc:ojdbc-provider-jackson-oson](https://github.com/oracle/ojdbc-extensions) | `1.0.4` | `1.0.6` |\n| [com.microsoft.sqlserver:mssql-jdbc](https://github.com/Microsoft/mssql-jdbc) | `13.2.1.jre11` | `13.4.0.jre11` |\n| com.ibm.db2:jcc | `12.1.3.0` | `12.1.4.0` |\n| com.sap.cloud.db.jdbc:ngdbc | `2.26.11` | `2.28.7` |\n| [com.teradata.jdbc:terajdbc](https://github.com/Teradata/jdbc-driver) | `20.00.00.51` | `20.00.00.54` |\n| com.ibm.informix:jdbc | `15.0.0.2` | `15.0.1.1` |\n| [org.firebirdsql.jdbc:jaybird](https://github.com/FirebirdSQL/jaybird) | `6.0.3` | `6.0.5` |\n| com.altibase:altibase-jdbc | `7.3.0.1.1` | `8.1.0.0.1` |\n| [com.google.cloud:google-cloud-spanner-jdbc](https://github.com/googleapis/google-cloud-java) | `2.35.5` | `2.38.0` |\n| org.apache.maven:maven-core | `3.9.14` | `3.9.15` |\n| org.apache.maven:maven-artifact | `3.9.14` | `3.9.15` |\n| org.apache.maven:maven-embedder | `3.9.14` | `3.9.15` |\n| [org.apache.maven:maven-compat](https://github.com/apache/maven) | `3.9.14` | `3.9.15` |\n| [org.apache.maven.plugin-tools:maven-plugin-tools-annotations](https://github.com/apache/maven-plugin-tools) | `3.15.1` | `3.15.2` |\n| org.apache.maven.resolver:maven-resolver-transport-http | `1.9.24` | `1.9.27` |\n| [org.apache.maven.resolver:maven-resolver-connector-basic](https://github.com/apache/maven-resolver) | `1.9.24` | `1.9.27` |\n| de.thetaphi:forbiddenapis | `3.8` | `3.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.asciidoctor:asciidoctorj](https://github.com/asciidoctor/asciidoctorj) | `3.0.0` | `3.0.1` |\n| com.diffplug.spotless | `8.3.0` | `8.4.0` |\n| com.gradle.plugin-publish | `2.0.0` | `2.1.1` |\n| org.jetbrains.kotlin.jvm | `2.0.20` | `2.3.21` |\n| biz.aQute.bnd | `7.2.1` | `7.2.3` |\n| biz.aQute.bnd.builder | `7.2.1` | `7.2.3` |\n\n\nUpdates `com.gradle.develocity` from 4.3.2 to 4.4.1\n\nUpdates `com.gradle.common-custom-user-data-gradle-plugin` from 2.4.0 to 2.6.0\n\nUpdates `org.checkerframework:checker-qual-android` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker-qual-android's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker-qual-android's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.checkerframework:checker` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.checkerframework:checker` from 3.53.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/releases\"\u003eorg.checkerframework:checker's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChecker Framework 4.1.0\u003c/h2\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e instead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and \u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0 of the Checker Framework\u003c/h2\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of javac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that compile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is, your code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and \u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in projects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600 issues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns about out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields Checker\u003c/a\u003e warns if a constructor does not initialize a field.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#resource-leak-checker\"\u003eResource Leak Checker\u003c/a\u003e guarantees that every resource is closed rather than leaked.  Examples of resources are a channel, executor, \u003ccode\u003eExecutionControl\u003c/code\u003e, file, \u003ccode\u003eFileLock\u003c/code\u003e, \u003ccode\u003eFormatter\u003c/code\u003e, reader, \u003ccode\u003eScanner\u003c/code\u003e, socket, stream, writer, etc.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#sql-quotes-checker\"\u003eSQL Quotes Checker\u003c/a\u003e helps prevent SQL injection vulnerabilities.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNew command-line arguments include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e-AskipFiles\u003c/code\u003e, \u003ccode\u003e-AonlyFiles\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AassumeSideEffectFree\u003c/code\u003e, \u003ccode\u003e-AassumeDeterministic\u003c/code\u003e, \u003ccode\u003e-AassumePure\u003c/code\u003e, \u003ccode\u003e-AassumePureGetters\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AuseConservativeDefaultsForUncheckedCode\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-AignoreRawTypeArguments\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md\"\u003eorg.checkerframework:checker's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0 (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eRemoved deprecated script \u003ccode\u003echecker/bin-devel/build.sh\u003c/code\u003e; use \u003ccode\u003e./gradlew assemble\u003c/code\u003e\ninstead.\u003c/p\u003e\n\u003cp\u003eRemoved deprecated names \u0026quot;builder\u0026quot;, \u0026quot;object.construction\u0026quot;, and\n\u0026quot;objectconstruction\u0026quot; for the Called Methods Checker.\u003c/p\u003e\n\u003ch3\u003eImplementation details\u003c/h3\u003e\n\u003cp\u003eNew method annotation \u003ccode\u003e@DoesNotUnrefineReceiver\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003eAnnotatedTypeFactory\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003enew method \u003ccode\u003ehasDoesNotUnrefineReceiver()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e is now protected rather than public.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eClosed issues\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/6890\"\u003e#6890\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7364\"\u003e#7364\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7488\"\u003e#7488\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 4.0.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003eUser-visible changes\u003c/h3\u003e\n\u003cp\u003eTo run the Checker Framework, you need to use a JDK 17 or later version of\njavac.  That is, you need to use JDK 17 or later when compiling your code.\u003c/p\u003e\n\u003cp\u003eThe Checker Framework can type-check any Java project, including projects that\ncompile to Java 8 or 11 bytecodes and run on JRE versions 8 or 11.  That is,\nyour code can run under any release of Java, from Java 8 onward.\u003c/p\u003e\n\u003cp\u003eThe type qualifiers and utility libraries in \u003ccode\u003echecker-qual.jar\u003c/code\u003e and\n\u003ccode\u003echecker-util.jar\u003c/code\u003e still use Java 11 bytecode.  Thus, they may be used in\nprojects that run under Java 11 or later.\u003c/p\u003e\n\u003ch3\u003eChanges since version 3.0.0\u003c/h3\u003e\n\u003cp\u003eSince version 3.0.0, 91 authors have made over 4500 commits and closed over 600\nissues.  Thanks to everyone who contributed!\u003c/p\u003e\n\u003cp\u003eNew checkers include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#index-checker\"\u003eIndex Checker\u003c/a\u003e warns\nabout out-of-bounds accesses to arrays and strings.\u003c/li\u003e\n\u003cli\u003eThe \u003ca href=\"https://checkerframework.org/manual/#initialized-fields-checker\"\u003eInitialized Fields\nChecker\u003c/a\u003e\nwarns if a constructor does not initialize a field.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/b8a7ca60a241c37d6889e8ecd38ba5fe6234e4d6\"\u003e\u003ccode\u003eb8a7ca6\u003c/code\u003e\u003c/a\u003e new release 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/f1563d2caeb6120b97b2dab32bc592ecf23b0848\"\u003e\u003ccode\u003ef1563d2\u003c/code\u003e\u003c/a\u003e Update for release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/786773754bb83c294f3c04629027660fb289d699\"\u003e\u003ccode\u003e7867737\u003c/code\u003e\u003c/a\u003e Set environment variable \u003ccode\u003eGH_TOKEN\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/771b037663bdd490f04245437dff8ae6ebb1c64b\"\u003e\u003ccode\u003e771b037\u003c/code\u003e\u003c/a\u003e Tweak documentation (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7668\"\u003e#7668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/71735d1ec23ef765d8e559c92cb736630b0efaa3\"\u003e\u003ccode\u003e71735d1\u003c/code\u003e\u003c/a\u003e Fix documentation typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/6465706e3b4a69f95b2421da4284b47ccb49b81a\"\u003e\u003ccode\u003e6465706\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eisAliasedTypeAnnotation()\u003c/code\u003e protected (\u003ca href=\"https://redirect.github.com/typetools/checker-framework/issues/7667\"\u003e#7667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/8af69bca25fbd1d293a46ea224567feabce34370\"\u003e\u003ccode\u003e8af69bc\u003c/code\u003e\u003c/a\u003e Update cimg/base Docker tag to v2026.04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/fa3ad9b59ac273df809e390fbcf2667e7977cce7\"\u003e\u003ccode\u003efa3ad9b\u003c/code\u003e\u003c/a\u003e How to update the Hevea version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/18002bf382ef24f3a4605dc17725bd9909c4497f\"\u003e\u003ccode\u003e18002bf\u003c/code\u003e\u003c/a\u003e Use environment variable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typetools/checker-framework/commit/dd8381c0344e7a3befb65c1e13b19b37aeb636c7\"\u003e\u003ccode\u003edd8381c\u003c/code\u003e\u003c/a\u003e Set up GitHub Actions CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typetools/checker-framework/compare/checker-framework-3.53.1...checker-framework-4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.ehcache:ehcache` from 3.11.1 to 3.12.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/f4a96f47758e8d0bbe3de81c371bdbb33d620b88\"\u003e\u003ccode\u003ef4a96f4\u003c/code\u003e\u003c/a\u003e Set ehcacheVersion to 3.12.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/ae90183364e2b67e5bc07c01be6f055b0d193099\"\u003e\u003ccode\u003eae90183\u003c/code\u003e\u003c/a\u003e TDB-20139 restore sonatype deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/bc9309ba47ad255872017ca71ba29240d1800c17\"\u003e\u003ccode\u003ebc9309b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3318\"\u003e#3318\u003c/a\u003e from ehcache/upgrade/master\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/2754c27f3bd53d620d8f4837c7c9e33337cc7c11\"\u003e\u003ccode\u003e2754c27\u003c/code\u003e\u003c/a\u003e CVE-2025-67030: Update plexus-utils to 3.6.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/87270e4b3b93742c8e3e5dcae733ee1f10f4ad6e\"\u003e\u003ccode\u003e87270e4\u003c/code\u003e\u003c/a\u003e CVE-2026-1605: Update Jetty to 12.1.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/0be598f1212d72f003700153f8faccebc09effc2\"\u003e\u003ccode\u003e0be598f\u003c/code\u003e\u003c/a\u003e Ignoring CVE-2025-67030\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/59cc21116254b6b1b5970b79272f0b3abfbc6808\"\u003e\u003ccode\u003e59cc211\u003c/code\u003e\u003c/a\u003e Upgrade platform and core\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/2badca4e5a7bb3039ae7521e83c6bf114655cf74\"\u003e\u003ccode\u003e2badca4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3311\"\u003e#3311\u003c/a\u003e from aurbroszniowski/TDB-19854-upgrade-dependencies-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/d532bbce9f72a1e253c4df1fbe6230a96b1e953c\"\u003e\u003ccode\u003ed532bbc\u003c/code\u003e\u003c/a\u003e TDB-19854\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ehcache/ehcache3/commit/b6df7aac037d55ee350d242d9b6edd69f6913dbc\"\u003e\u003ccode\u003eb6df7aa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ehcache/ehcache3/issues/3310\"\u003e#3310\u003c/a\u003e from ehcache/platform-5.11.6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ehcache/ehcache3/compare/v3.11.1...v3.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-api` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-api's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-engine` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-params` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-params's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\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.1 to 6.0.3\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.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-api` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-api's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-engine` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-engine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.jupiter:junit-jupiter-params` from 6.0.1 to 6.0.3\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.jupiter:junit-jupiter-params's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\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.1 to 6.0.3\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.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.junit.platform:junit-platform-launcher` from 6.0.1 to 6.0.3\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.platform:junit-platform-launcher's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eJUnit 6.0.3 = Platform 6.0.3 + Jupiter 6.0.3 + Vintage 6.0.3\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.3/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.2...r6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eJUnit 6.0.2 = Platform 6.0.2 + Jupiter 6.0.2 + Vintage 6.0.2\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.junit.org/6.0.2/release-notes.html\"\u003eRelease Notes\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\"\u003ehttps://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/36e3253b726fa13cb9a1d29e94b9119575078c4a\"\u003e\u003ccode\u003e36e3253\u003c/code\u003e\u003c/a\u003e Release 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/295561f38592f1682feceb64d361987da1d0fc9b\"\u003e\u003ccode\u003e295561f\u003c/code\u003e\u003c/a\u003e Finalize 6.0.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/ea18076da11599c1467929bf75bc260e13c611b9\"\u003e\u003ccode\u003eea18076\u003c/code\u003e\u003c/a\u003e Fix deadlock in NamespacedHierarchicalStore.computeIfAbsent() (\u003ca href=\"https://redirect.github.com/junit-team/junit-framework/issues/5348\"\u003e#5348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/869e232420f1c1c64ab9be29609fe3e241c3675e\"\u003e\u003ccode\u003e869e232\u003c/code\u003e\u003c/a\u003e Add 5.14.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/d4b34c468ddb697ff3fe4096b3d67c28751ddab2\"\u003e\u003ccode\u003ed4b34c4\u003c/code\u003e\u003c/a\u003e Fix links to User Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/5c8fb0f2151fc277c3a0de7c3237d05c919439bb\"\u003e\u003ccode\u003e5c8fb0f\u003c/code\u003e\u003c/a\u003e Reliably support JRE.OTHER with @⁠EnabledOnJre and @⁠DisabledOnJre\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/febb13f70272a243742ea63d0f85535f7c51a67c\"\u003e\u003ccode\u003efebb13f\u003c/code\u003e\u003c/a\u003e Check out entire repo so switching to \u003ccode\u003emain\u003c/code\u003e branch works in last step\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/71fba9098655387c82d8ddbf137442bcb1fa56a0\"\u003e\u003ccode\u003e71fba90\u003c/code\u003e\u003c/a\u003e Install \u003ccode\u003epoppler-utils\u003c/code\u003e for \u003ccode\u003epdfinfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/740e9e050964c66da7cb5386f89a450985d51941\"\u003e\u003ccode\u003e740e9e0\u003c/code\u003e\u003c/a\u003e Update API baseline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junit-team/junit-framework/commit/2ba535f0c108ef5f8252578ee4c70547ff10d752\"\u003e\u003ccode\u003e2ba535f\u003c/code\u003e\u003c/a\u003e Use release branch of examples repo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ch.qos.logback:logback-classic` from 1.5.18 to 1.5.32\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qos-ch/logback/releases\"\u003ech.qos.logback:logback-classic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eLogback 1.5.32\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-16 Release of logback version 1.5.32\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In \u003ccode\u003eDefaultProcessor, \u003c/code\u003efixed incorrect check for dependencies contained within a parent model. Previous only the direct children were scanned. This fixes \u003ca href=\"https://redirect.github.com/qos-ch/logback-access/issues/34\"\u003elogback-access/issues/34\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit e807335a67535b4eacce94e942c0bcb649665d93 associated with the tag v_1.5.32. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback  1.5.31\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-14 Release of logback version 1.5.31\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Fixed missing META-INF/services directory in logback-classic.jar. This issue rendered logback-classic version 1.5.30 unusable with SLF4J.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit 168e42f9f9a18a3ffdf31eb2bfe80a71e33ecd8b associated with the tag v_1.5.31. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.30\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-14 Release of logback  version 1.5.30\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• \u003cstrong\u003eIn this version, logback-classic.jar was missing the META-INF/services directory, making it unusable with SLF4J. Version 1.5.31 (released later on the same day) fixes this issue.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Fix scanning issue when an included file becomes available at a later time. This problem was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1021\"\u003eissues/1021\u003c/a\u003e by Sergey Nazarov.\u003c/p\u003e\n\u003cp\u003e• Standardized code for version checking across modules.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit 44164f10ca3fb44ce0e68519f13564b87e3aca61 associated with the tag v_1.5.30. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.29\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-09 Release of logback version 1.5.29\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• In response to \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1017\"\u003eissues/1017\u003c/a\u003e, appender names and appender references are once again subject to variable substitution, reverting the change introduced in version 1.5.28.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.28\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-02-06 Release of logback version 1.5.28\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Appender names or appender references are no longer subject to variable substitution.\u003c/p\u003e\n\u003cp\u003e• Fixed issue with configurations with conditionals encompassing appenders. This was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1016\"\u003eissues/1016\u003c/a\u003e reported by Sergey Sazonov.\u003c/p\u003e\n\u003cp\u003e• The \u003c!-- raw HTML omitted --\u003e element now admits a 'scan' attribute which can be used to override the 'scan' attribute in the \u003c!-- raw HTML omitted --\u003e element.\u003c/p\u003e\n\u003cp\u003e• Fixed NullPointerException thrown by VersionUtil.checkForVersionEquality method occurring with GraalVM Native Images. This issue was reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1014\"\u003eissues/1014\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e• A bit-wise identical binary of this version can be reproduced by building from source code at commit e7a1855ab562bb102333f754603ff89359bf3cfc associated with the tag v_1.5.28. Release built using Java \u0026quot;21\u0026quot; 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.\u003c/p\u003e\n\u003ch2\u003eLogback 1.5.27\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003e2026-01-30 Release of logback version 1.5.27\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e• Updated license to Eclipse Public License version 2.0 from version 1.0, retaining the GPL 2.1 dual-license.\u003c/p\u003e\n\u003cp\u003e• Fixed missing MDC data transmitted by \u003ccode\u003eSocketAppender\u003c/code\u003e reported in \u003ca href=\"https://redirect.github.com/qos-ch/logback/issues/1010\"\u003eissues/1010\u003c/a\u003e by Lars Vogel.\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/qos-ch/logback/commit/e807335a67535b4eacce94e942c0bcb649665d93\"\u003e\u003ccode\u003ee807335\u003c/code\u003e\u003c/a\u003e prepare release 1.5.32\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https...\n\n_Description has been truncated_","html_url":"https://github.com/hibernate/hibernate-orm/pull/12330","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hibernate%2Fhibernate-orm/issues/12330","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12330/packages"}},{"old_version":"3.5.7","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-05-01T05:58:46.000Z","version_change":"3.5.7 → 3.5.8","issue":{"uuid":"4363084166","node_id":"PR_kwDOGTAvb87XWnvu","number":131,"state":"closed","title":"build(deps): bump the versions group with 34 updates","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-01T21:02:41.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-01T05:58:46.000Z","updated_at":"2026-05-01T21:02:51.000Z","time_to_close":54235,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"versions","update_count":34,"packages":[{"name":"gradle-wrapper","old_version":"9.3.1","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"},{"name":"org.xerial:sqlite-jdbc","old_version":"3.51.3.0","new_version":"3.53.0.0","repository_url":"https://github.com/xerial/sqlite-jdbc"},{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.jetbrains.exposed:exposed-core","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/JetBrains/Exposed"},{"name":"org.jetbrains.exposed:exposed-dao","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/JetBrains/Exposed"},{"name":"org.jetbrains.exposed:exposed-java-time","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/JetBrains/Exposed"},{"name":"org.jetbrains.exposed:exposed-jdbc","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/JetBrains/Exposed"},{"name":"com.google.code.gson:gson","old_version":"2.13.2","new_version":"2.14.0","repository_url":"https://github.com/google/gson"},{"name":"com.google.guava:guava","old_version":"33.5.0-jre","new_version":"33.6.0-jre","repository_url":"https://github.com/google/guava"},{"name":"net.dv8tion:JDA","old_version":"6.4.0","new_version":"6.4.1","repository_url":"https://github.com/discord-jda/JDA"},{"name":"ru.astrainteractive.klibs:kstorage","old_version":"4.5.0","new_version":"5.0.4","repository_url":"https://github.com/makeevrserg/klibs.kstorage"},{"name":"ru.astrainteractive.klibs:mikro-core","old_version":"1.22.0","new_version":"1.23.0","repository_url":"https://github.com/makeevrserg/klibs.mikro"},{"name":"ru.astrainteractive.klibs:mikro-extensions-jvm","old_version":"1.22.0","new_version":"1.23.0","repository_url":"https://github.com/makeevrserg/klibs.mikro"},{"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":"org.jetbrains.kotlinx:kotlinx-serialization-protobuf","old_version":"1.10.0","new_version":"1.11.0","repository_url":"https://github.com/Kotlin/kotlinx.serialization"},{"name":"io.ktor:ktor-client-cio","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-client-content-negotiation","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-client-core","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-client-json","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-client-logging","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"io.ktor:ktor-serialization-kotlinx-json","old_version":"3.4.2","new_version":"3.4.3","repository_url":"https://github.com/ktorio/ktor"},{"name":"com.discordsrv:discordsrv","old_version":"1.30.4","new_version":"1.30.5"},{"name":"net.fabricmc:fabric-loader","old_version":"0.18.2","new_version":"0.19.2"},{"name":"net.kyori:adventure-api","old_version":"4.26.1","new_version":"5.0.1","repository_url":"https://github.com/PaperMC/adventure"},{"name":"net.kyori:adventure-text-serializer-gson","old_version":"4.26.1","new_version":"5.0.1","repository_url":"https://github.com/PaperMC/adventure"},{"name":"net.kyori:adventure-text-serializer-legacy","old_version":"4.26.1","new_version":"5.0.1","repository_url":"https://github.com/PaperMC/adventure"},{"name":"net.kyori:adventure-text-minimessage","old_version":"4.26.1","new_version":"5.0.1","repository_url":"https://github.com/PaperMC/adventure"},{"name":"net.kyori:adventure-text-serializer-plain","old_version":"4.26.1","new_version":"5.0.1","repository_url":"https://github.com/PaperMC/adventure"},{"name":"com.github.MockBukkit:MockBukkit","old_version":"4.101.0","new_version":"4.108.0","repository_url":"https://github.com/MockBukkit/MockBukkit"},{"name":"net.neoforged:bus","old_version":"8.0.2","new_version":"8.0.5","repository_url":"https://github.com/NeoForged/Bus"},{"name":"net.neoforged:neoforge","old_version":"21.1.129","new_version":"21.11.42","repository_url":"https://github.com/NeoForged/NeoForge"},{"name":"com.github.retrooper:packetevents-spigot","old_version":"2.11.2","new_version":"2.12.1","repository_url":"https://github.com/retrooper/packetevents"},{"name":"fabric-loom","old_version":"1.14.6","new_version":"1.16.1"},{"name":"net.neoforged.gradle.userdev","old_version":"7.1.20","new_version":"7.1.26"}],"path":null,"ecosystem":"maven"},"body":"Bumps the versions group with 34 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.3.1` | `9.5.0` |\n| [org.xerial:sqlite-jdbc](https://github.com/xerial/sqlite-jdbc) | `3.51.3.0` | `3.53.0.0` |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| [org.jetbrains.exposed:exposed-core](https://github.com/JetBrains/Exposed) | `1.1.1` | `1.2.0` |\n| [org.jetbrains.exposed:exposed-dao](https://github.com/JetBrains/Exposed) | `1.1.1` | `1.2.0` |\n| [org.jetbrains.exposed:exposed-java-time](https://github.com/JetBrains/Exposed) | `1.1.1` | `1.2.0` |\n| [org.jetbrains.exposed:exposed-jdbc](https://github.com/JetBrains/Exposed) | `1.1.1` | `1.2.0` |\n| [com.google.code.gson:gson](https://github.com/google/gson) | `2.13.2` | `2.14.0` |\n| [com.google.guava:guava](https://github.com/google/guava) | `33.5.0-jre` | `33.6.0-jre` |\n| [net.dv8tion:JDA](https://github.com/discord-jda/JDA) | `6.4.0` | `6.4.1` |\n| [ru.astrainteractive.klibs:kstorage](https://github.com/makeevrserg/klibs.kstorage) | `4.5.0` | `5.0.4` |\n| [ru.astrainteractive.klibs:mikro-core](https://github.com/makeevrserg/klibs.mikro) | `1.22.0` | `1.23.0` |\n| [ru.astrainteractive.klibs:mikro-extensions-jvm](https://github.com/makeevrserg/klibs.mikro) | `1.22.0` | `1.23.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [org.jetbrains.kotlinx:kotlinx-serialization-protobuf](https://github.com/Kotlin/kotlinx.serialization) | `1.10.0` | `1.11.0` |\n| [io.ktor:ktor-client-cio](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-client-content-negotiation](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-client-core](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-client-json](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-client-logging](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| [io.ktor:ktor-serialization-kotlinx-json](https://github.com/ktorio/ktor) | `3.4.2` | `3.4.3` |\n| com.discordsrv:discordsrv | `1.30.4` | `1.30.5` |\n| net.fabricmc:fabric-loader | `0.18.2` | `0.19.2` |\n| [net.kyori:adventure-api](https://github.com/PaperMC/adventure) | `4.26.1` | `5.0.1` |\n| [net.kyori:adventure-text-serializer-gson](https://github.com/PaperMC/adventure) | `4.26.1` | `5.0.1` |\n| [net.kyori:adventure-text-serializer-legacy](https://github.com/PaperMC/adventure) | `4.26.1` | `5.0.1` |\n| [net.kyori:adventure-text-minimessage](https://github.com/PaperMC/adventure) | `4.26.1` | `5.0.1` |\n| [net.kyori:adventure-text-serializer-plain](https://github.com/PaperMC/adventure) | `4.26.1` | `5.0.1` |\n| [com.github.MockBukkit:MockBukkit](https://github.com/MockBukkit/MockBukkit) | `4.101.0` | `4.108.0` |\n| [net.neoforged:bus](https://github.com/NeoForged/Bus) | `8.0.2` | `8.0.5` |\n| [net.neoforged:neoforge](https://github.com/NeoForged/NeoForge) | `21.1.129` | `21.11.42` |\n| [com.github.retrooper:packetevents-spigot](https://github.com/retrooper/packetevents) | `2.11.2` | `2.12.1` |\n| fabric-loom | `1.14.6` | `1.16.1` |\n| net.neoforged.gradle.userdev | `7.1.20` | `7.1.26` |\n\nUpdates `gradle-wrapper` from 9.3.1 to 9.5.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.5.0\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.5.0.\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.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/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.0 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.5.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.5.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.5.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.5.0 RC4\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/3fe117d68f3907790f3809f121aa36303a9151f8\"\u003e\u003ccode\u003e3fe117d\u003c/code\u003e\u003c/a\u003e Update jdks.yaml (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37703\"\u003e#37703\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/33d145af6fbe7cf7c9d84646b6d7f32fea91d5e2\"\u003e\u003ccode\u003e33d145a\u003c/code\u003e\u003c/a\u003e Update jdks.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7a05d1ed48442eb5da4d6e2b6593da55cdec1da\"\u003e\u003ccode\u003ef7a05d1\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37654\"\u003e#37654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/266facdcbcb0b4c60120cc118eaf0f652bfcdfe5\"\u003e\u003ccode\u003e266facd\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0ad6dd8e143455707e444aa7e3d38327a3366513\"\u003e\u003ccode\u003e0ad6dd8\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37646\"\u003e#37646\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/966025d5850d46c9158a2f25e4096222277ecf57\"\u003e\u003ccode\u003e966025d\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e7455734449e422accebf44cf7b31bf93e3a770c\"\u003e\u003ccode\u003ee745573\u003c/code\u003e\u003c/a\u003e Polish IP docs (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37642\"\u003e#37642\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/d5cfd079acd2c8f1182edd6ec23dbab571132d0a\"\u003e\u003ccode\u003ed5cfd07\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37629\"\u003e#37629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/acdf0c36fa13ba09a7ff5b51f79b9af4b1a097ee\"\u003e\u003ccode\u003eacdf0c3\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7d0e4f6f7896426a8b24091388e4c252b62faef\"\u003e\u003ccode\u003ef7d0e4f\u003c/code\u003e\u003c/a\u003e Rename anchor\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.3.1...v9.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.xerial:sqlite-jdbc` from 3.51.3.0 to 3.53.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/xerial/sqlite-jdbc/releases\"\u003eorg.xerial:sqlite-jdbc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.53.0.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejdbc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eexpose wal_autocheckpoint pragma in SQLiteConfig (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/dd2adcc\"\u003edd2adcc\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/xerial/sqlite-jdbc/issues/1397\"\u003e#1397\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003esqlite\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to sqlite 3.53.0 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/baaf087\"\u003ebaaf087\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eunscoped\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003epublish multiple classifer jars (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/bdd2b64\"\u003ebdd2b64\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/xerial/sqlite-jdbc/issues/1273\"\u003e#1273\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebetter Android support (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/7eb6f3f\"\u003e7eb6f3f\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/xerial/sqlite-jdbc/issues/1378\"\u003e#1378\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump org.sonatype.central:central-publishing-maven-plugin (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/19259e5\"\u003e19259e5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/f572217\"\u003ef572217\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003edeps-dev\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump surefire.version from 3.5.4 to 3.5.5 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/b649d25\"\u003eb649d25\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.assertj:assertj-core from 3.27.6 to 3.27.7 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/857a754\"\u003e857a754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.23.0 (\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commits/a597952\"\u003ea597952\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Karl-Michael Edlinger, kju2\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/xerial/sqlite-jdbc/commit/f88e9c7b4d71a443fc9ce80c43e34cd85ceef338\"\u003e\u003ccode\u003ef88e9c7\u003c/code\u003e\u003c/a\u003e chore(release): 3.53.0.0 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/bdd2b64a107ef3aef2168a4446cb2b1c59992ddf\"\u003e\u003ccode\u003ebdd2b64\u003c/code\u003e\u003c/a\u003e feat: publish multiple classifer jars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/7eb6f3fb57c21e2d18a8145e2996caa0cdd398c3\"\u003e\u003ccode\u003e7eb6f3f\u003c/code\u003e\u003c/a\u003e feat: better Android support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/23ead2e027a9868184ab5d363c66652f7d6c64ca\"\u003e\u003ccode\u003e23ead2e\u003c/code\u003e\u003c/a\u003e chore: update native libraries\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/baaf0870311ce780c7d15598fc080f3b31079aea\"\u003e\u003ccode\u003ebaaf087\u003c/code\u003e\u003c/a\u003e feat(sqlite): upgrade to sqlite 3.53.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/dd2adcc879a3b9914f3953629536f3d53473f275\"\u003e\u003ccode\u003edd2adcc\u003c/code\u003e\u003c/a\u003e feat(jdbc): expose wal_autocheckpoint pragma in SQLiteConfig\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/b649d257cbb030969cdbf2cf74d2a05b590ebf86\"\u003e\u003ccode\u003eb649d25\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump surefire.version from 3.5.4 to 3.5.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/857a754356614e2705b1ce1a955b47b0333fedeb\"\u003e\u003ccode\u003e857a754\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump org.assertj:assertj-core from 3.27.6 to 3.27.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/19259e5f34ed5a99515a0ae43711cddde0ef9158\"\u003e\u003ccode\u003e19259e5\u003c/code\u003e\u003c/a\u003e build(deps): bump org.sonatype.central:central-publishing-maven-plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/xerial/sqlite-jdbc/commit/a5979522b3a4b04020edda625891d2593638316a\"\u003e\u003ccode\u003ea597952\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump org.mockito:mockito-core from 5.21.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/xerial/sqlite-jdbc/compare/3.51.3.0...3.53.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jetbrains.exposed:exposed-core` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-core's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-dao` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-dao's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-dao's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-java-time` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-java-time's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-java-time's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-jdbc` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-jdbc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-jdbc's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-dao` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-dao's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-dao's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-java-time` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-java-time's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-java-time's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.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.exposed:exposed-jdbc` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/JetBrains/Exposed/releases\"\u003eorg.jetbrains.exposed:exposed-jdbc's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/blob/main/CHANGELOG.md#120\"\u003eChange log\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\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/JetBrains/Exposed/blob/main/CHANGELOG.md\"\u003eorg.jetbrains.exposed:exposed-jdbc's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.2.0\u003c/h1\u003e\n\u003cp\u003eInfrastructure:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJoda-Time 2.14.1\u003c/li\u003e\n\u003cli\u003eSpring Framework(6) 6.2.17\u003c/li\u003e\n\u003cli\u003eDokka 2.2.0\u003c/li\u003e\n\u003cli\u003eKover 0.9.8\u003c/li\u003e\n\u003cli\u003elogcaptor 2.12.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efeat: EXPOSED-418 Support comments on table columns by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2728\"\u003eJetBrains/Exposed#2728\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-989 Add Oracle FOR UPDATE SKIP LOCKED support by \u003ca href=\"https://github.com/obabichevjb\"\u003e\u003ccode\u003e@​obabichevjb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2752\"\u003eJetBrains/Exposed#2752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: EXPOSED-1001 Enable check constraint name change to trigger ALTER TABLE statements for more than H2 by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2759\"\u003eJetBrains/Exposed#2759\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: EXPOSED-992 Prevent kotlin Uuid type leakage into r2dbc by \u003ca href=\"https://github.com/mcmacker4\"\u003e\u003ccode\u003e@​mcmacker4\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2750\"\u003eJetBrains/Exposed#2750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-983 Support reading JSONB columns outside transaction by using safer dialect check by \u003ca href=\"https://github.com/bystam\"\u003e\u003ccode\u003e@​bystam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2748\"\u003eJetBrains/Exposed#2748\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1000 Fetching fresh data for cached entity causes encrypted field to fail with multiple decrypts by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2758\"\u003eJetBrains/Exposed#2758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: In r2dbc use StringColumnType supertype for PostgreSQL text array handling by \u003ca href=\"https://github.com/o-nix\"\u003e\u003ccode\u003e@​o-nix\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2761\"\u003eJetBrains/Exposed#2761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contains single quote by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2768\"\u003eJetBrains/Exposed#2768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement parameter set by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2767\"\u003eJetBrains/Exposed#2767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: EXPOSED-991 Specify the lack of R2DBC support in DAO-related topics by \u003ca href=\"https://github.com/vnikolova\"\u003e\u003ccode\u003e@​vnikolova\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2749\"\u003eJetBrains/Exposed#2749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: EXPOSED-997 Update migration topic with known limitations by \u003ca href=\"https://github.com/bog-walk\"\u003e\u003ccode\u003e@​bog-walk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/JetBrains/Exposed/pull/2755\"\u003eJetBrains/Exposed#2755\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/JetBrains/Exposed/commit/d8abeaad8ab02583c664a0e3869b1a80ce151fdf\"\u003e\u003ccode\u003ed8abeaa\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/1ea6fbd8c002fc2c64cdd5a1c5bc5f944b326022\"\u003e\u003ccode\u003e1ea6fbd\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/362e24cc85017d56e4210623b2db6ca6cae003fe\"\u003e\u003ccode\u003e362e24c\u003c/code\u003e\u003c/a\u003e chore: Bump Exposed version from 1.1.1 to 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/629f71cbd1265fd96b23c35dd382e27507411161\"\u003e\u003ccode\u003e629f71c\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-1007 Array of fixed length CHAR type is truncated when statement...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/6eef642d06ce5c0db87b3899f4d4680b2209a6ba\"\u003e\u003ccode\u003e6eef642\u003c/code\u003e\u003c/a\u003e Update Gradle validation workflow actions (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2769\"\u003e#2769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/a71f82deddca2fac67392544674b9948ffa21e48\"\u003e\u003ccode\u003ea71f82d\u003c/code\u003e\u003c/a\u003e fix: EXPOSED-994 JSONB contains() produces invalid SQL when JSON array contai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/bba45225ea90df986fe261e0c3ea641add4b9e14\"\u003e\u003ccode\u003ebba4522\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.kotlinx.kover from 0.9.7 to 0.9.8 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2764\"\u003e#2764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/197fa2aacfa16d917fe9c36a0a68c8649ce32438\"\u003e\u003ccode\u003e197fa2a\u003c/code\u003e\u003c/a\u003e build(deps): Bump org.jetbrains.dokka from 2.1.0 to 2.2.0 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2765\"\u003e#2765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/e9b9afc49f2416b659ad24a2e1e9a020269109bc\"\u003e\u003ccode\u003ee9b9afc\u003c/code\u003e\u003c/a\u003e fix: In r2dbc use StringColumnType supertype for PostgreSQL text array handli...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JetBrains/Exposed/commit/4e2ba799b49652e6bf783359d42c11e3eeb0a6a1\"\u003e\u003ccode\u003e4e2ba79\u003c/code\u003e\u003c/a\u003e build(deps): Bump io.github.hakky54:logcaptor from 2.12.5 to 2.12.6 (\u003ca href=\"https://redirect.github.com/JetBrains/Exposed/issues/2763\"\u003e#2763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/JetBrains/Exposed/compare/1.1.1...1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.google.code.gson:gson` from 2.13.2 to 2.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/google/gson/releases\"\u003ecom.google.code.gson:gson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eGson 2.14.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type adapters for \u003ccode\u003ejava.time\u003c/code\u003e classes by \u003ca href=\"https://github.com/eamonnmcmanus\"\u003e\u003ccode\u003e@​eamonnmcmanus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2948\"\u003egoogle/gson#2948\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWhen the \u003ccode\u003ejava.time\u003c/code\u003e API is available, Gson automatically can read and write instances of classes like \u003ccode\u003eInstant\u003c/code\u003e and \u003ccode\u003eDuration\u003c/code\u003e. The format it uses essentially freezes the JSON representation that \u003ccode\u003eReflectiveTypeAdapterFactory\u003c/code\u003e established by default, based on the private fields of \u003ccode\u003ejava.time\u003c/code\u003e classes. That's not a great representation, but it is understandable. Changing it to anything else would break compatibility with systems that are expecting the current format.\u003c/p\u003e\n\u003cp\u003eWith this change, Gson no longer tries to access private fields of these classes using reflection. So it is no longer necessary to run with \u003ccode\u003e--add-opens\u003c/code\u003e for these classes on recent JDKs.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove \u003ccode\u003ecom.google.gson.graph\u003c/code\u003e by \u003ca href=\"https://github.com/eamonnmcmanus\"\u003e\u003ccode\u003e@​eamonnmcmanus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2990\"\u003egoogle/gson#2990\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis package was not part of any released artifact and depended on Gson internals in potentially problematic ways.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eValidate that strings being parsed as integers consist of ASCII characters by \u003ca href=\"https://github.com/eamonnmcmanus\"\u003e\u003ccode\u003e@​eamonnmcmanus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/2995\"\u003egoogle/gson#2995\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003ePreviously, strings could contain non-ASCII Unicode digits and still be parsed as integers. That's inconsistent with how JSON numbers are treated.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix duplicate key detection when first value is null by \u003ca href=\"https://github.com/andrewstellman\"\u003e\u003ccode\u003e@​andrewstellman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/3006\"\u003egoogle/gson#3006\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis could potentially break code that was relying on the incorrect behaviour. For example, this JSON string was previously accepted but will no longer be: \u003ccode\u003e{\u0026quot;foo\u0026quot;: null, \u0026quot;foo\u0026quot;: bar}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove \u003ccode\u003eSerializable\u003c/code\u003e from internal \u003ccode\u003eType\u003c/code\u003e implementation classes. by \u003ca href=\"https://github.com/eamonnmcmanus\"\u003e\u003ccode\u003e@​eamonnmcmanus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/google/gson/pull/3011\"\u003egoogle/gson#3011\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe nested classes \u003ccode\u003eParameterizedTypeImpl\u003c/code\u003e, \u003ccode\u003eGenericArrayTypeImpl\u003c/code\u003e, and \u003ccode\u003eWildcardTypeImpl\u003c/code\u003e in \u003ccode\u003eGsonTypes\u003c/code\u003e are implementations of the corresponding types (without \u003ccode\u003eImp...\n\n_Description has been truncated_","html_url":"https://github.com/Astra-Interactive/AstraLibs/pull/131","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Astra-Interactive%2FAstraLibs/issues/131","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/131/packages"}},{"old_version":"3.5.7","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-05-01T03:22:20.000Z","version_change":"3.5.7 → 3.5.8","issue":{"uuid":"4362615619","node_id":"PR_kwDOR0sr5c7XVHRl","number":16,"state":"closed","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 11 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-05-08T03:11:37.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-01T03:22:20.000Z","updated_at":"2026-05-08T03:11:38.000Z","time_to_close":604157,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":11,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.2.0","new_version":"12.5.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.44","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.1","new_version":"3.1.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.springframework.boot","old_version":"4.0.5","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.3.0.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.1","new_version":"9.5.0","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 11 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.2.0` | `12.5.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.44` | `1.18.46` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.1` | `3.1.2` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.5` | `4.0.6` |\n| org.hibernate.orm | `7.3.0.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.1` | `9.5.0` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.2.0 to 12.5.0\n\nUpdates `org.projectlombok:lombok` from 1.18.44 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.44...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tools.jackson:jackson-bom` from 3.1.1 to 3.1.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.1...jackson-bom-3.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.5 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.5...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.3.0.Final to 7.3.2.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.1 to 9.5.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.5.0\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.5.0.\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.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/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.0 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.5.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.5.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.5.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.5.0 RC4\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/3fe117d68f3907790f3809f121aa36303a9151f8\"\u003e\u003ccode\u003e3fe117d\u003c/code\u003e\u003c/a\u003e Update jdks.yaml (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37703\"\u003e#37703\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/33d145af6fbe7cf7c9d84646b6d7f32fea91d5e2\"\u003e\u003ccode\u003e33d145a\u003c/code\u003e\u003c/a\u003e Update jdks.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7a05d1ed48442eb5da4d6e2b6593da55cdec1da\"\u003e\u003ccode\u003ef7a05d1\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37654\"\u003e#37654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/266facdcbcb0b4c60120cc118eaf0f652bfcdfe5\"\u003e\u003ccode\u003e266facd\u003c/code\u003e\u003c/a\u003e Update Gradle wrapper to version 9.5.0-rc-4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0ad6dd8e143455707e444aa7e3d38327a3366513\"\u003e\u003ccode\u003e0ad6dd8\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37646\"\u003e#37646\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/966025d5850d46c9158a2f25e4096222277ecf57\"\u003e\u003ccode\u003e966025d\u003c/code\u003e\u003c/a\u003e Suppress OSC taskbar reset on plain/piped stdout\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e7455734449e422accebf44cf7b31bf93e3a770c\"\u003e\u003ccode\u003ee745573\u003c/code\u003e\u003c/a\u003e Polish IP docs (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37642\"\u003e#37642\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/d5cfd079acd2c8f1182edd6ec23dbab571132d0a\"\u003e\u003ccode\u003ed5cfd07\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37629\"\u003e#37629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/acdf0c36fa13ba09a7ff5b51f79b9af4b1a097ee\"\u003e\u003ccode\u003eacdf0c3\u003c/code\u003e\u003c/a\u003e Ensure BuildOperationQueue will progress without extra leases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/f7d0e4f6f7896426a8b24091388e4c252b62faef\"\u003e\u003ccode\u003ef7d0e4f\u003c/code\u003e\u003c/a\u003e Rename anchor\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.1...v9.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/willianpaixao/booklore/pull/16","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/willianpaixao%2Fbooklore/issues/16","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/16/packages"}},{"old_version":"3.5.7","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-04-24T03:10:28.000Z","version_change":"3.5.7 → 3.5.8","issue":{"uuid":"4320244201","node_id":"PR_kwDORprh4c7VMZt8","number":27,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 12 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-24T03:10:28.000Z","updated_at":"2026-04-24T03:15:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":12,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.1.1","new_version":"12.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.44","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"com.github.RouHim:jaudiotagger","old_version":"2.0.18","new_version":"2.0.19"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.3.0.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.4.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 12 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.1.1` | `12.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.44` | `1.18.46` |\n| com.github.RouHim:jaudiotagger | `2.0.18` | `2.0.19` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.2` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.3.0.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.4.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.1.1 to 12.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.44 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.44...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.RouHim:jaudiotagger` from 2.0.18 to 2.0.19\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2d305e6af8b61c6c30f5658cd8c794419e233a53\"\u003e\u003ccode\u003e2d305e6\u003c/code\u003e\u003c/a\u003e Add JDK 25 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/da85336a6e5749354bc65536f493a712401eea4f\"\u003e\u003ccode\u003eda85336\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/123\"\u003e#123\u003c/a\u003e from FasterXML/tatu/3.1/122-switch-to-junit6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7ec5e0ec5ad5e53e12e775537e4717478841d459\"\u003e\u003ccode\u003e7ec5e0e\u003c/code\u003e\u003c/a\u003e Fix \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/122\"\u003e#122\u003c/a\u003e: switch 3.x (starting with 3.1.1) to use JUnit 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ef0977031036f6fcc6d54eaeb93ccd35a2ab2c96\"\u003e\u003ccode\u003eef09770\u003c/code\u003e\u003c/a\u003e Update oss-parent dep\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.3.0.Final to 7.3.2.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 to 9.4.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.4.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.4.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJava 26 support\u003c/li\u003e\n\u003cli\u003eNon-class-based JVM tests\u003c/li\u003e\n\u003cli\u003eEnhanced console progress bar\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.4.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/akankshaa-00\"\u003eakankshaa-00\u003c/a\u003e,\n\u003ca href=\"https://github.com/kelemen\"\u003eAttila Kelemen\u003c/a\u003e,\n\u003ca href=\"https://github.com/Vampire\"\u003eBjörn Kautler\u003c/a\u003e,\n\u003ca href=\"https://github.com/dblood\"\u003edblood\u003c/a\u003e,\n\u003ca href=\"https://github.com/drieks\"\u003eDennis Rieks\u003c/a\u003e,\n\u003ca href=\"https://github.com/duvvuvenkataramana\"\u003eduvvuvenkataramana\u003c/a\u003e,\n\u003ca href=\"https://github.com/wakingrufus\"\u003eJohn Burns\u003c/a\u003e,\n\u003ca href=\"https://github.com/Julianw03\"\u003eJulian\u003c/a\u003e,\n\u003ca href=\"https://github.com/kevinstembridge\"\u003ekevinstembridge\u003c/a\u003e,\n\u003ca href=\"https://github.com/NielsDoucet\"\u003eNiels Doucet\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/rhernandez35\"\u003eRichard Hernandez\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/slovdahl\"\u003eSebastian Lövdahl\u003c/a\u003e,\n\u003ca href=\"https://github.com/stephan2405\"\u003estephan2405\u003c/a\u003e,\n\u003ca href=\"https://github.com/slandelle\"\u003eStephane Landelle\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,\n\u003ca href=\"https://github.com/Pankraz76\"\u003eVincent Potuček\u003c/a\u003e,\n\u003ca href=\"https://github.com/vlsi\"\u003eVladimir Sitnikov\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.4.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.4.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.4.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.4.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\u003c/blockquote\u003e\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/2d6327017519d23b96af35865dc997fcb544fb40\"\u003e\u003ccode\u003e2d63270\u003c/code\u003e\u003c/a\u003e Ignore test (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37180\"\u003e#37180\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/4c15906d6a20acc61f2f7b9272c8cb7a6f708239\"\u003e\u003ccode\u003e4c15906\u003c/code\u003e\u003c/a\u003e Ignore test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9759ac1dec4b3742012397b5f0127a777947b73f\"\u003e\u003ccode\u003e9759ac1\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37178\"\u003e#37178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/aaf6ed46ed8d4c3b9b7a7a751cda5893668b2a42\"\u003e\u003ccode\u003eaaf6ed4\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/47cb78328a6ddc6c1509003ab3264017ed5d9a0a\"\u003e\u003ccode\u003e47cb783\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 progress bar not cleared on SIGINT (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37038\"\u003e#37038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/ef03f1d41b0a65f6aae0931d4746f7359647a7e4\"\u003e\u003ccode\u003eef03f1d\u003c/code\u003e\u003c/a\u003e Fix order-dependent assertion in CrossBuildScriptCachingIntegrationSpec\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/fd26fd36d693337dbf033143a9ac0e71f78a4209\"\u003e\u003ccode\u003efd26fd3\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 taskbar progress bar not cleared on build end or SIGINT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0a84d6751921709fbc7d552a50d9e3b34eb1930d\"\u003e\u003ccode\u003e0a84d67\u003c/code\u003e\u003c/a\u003e Release notes for 9.4.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37148\"\u003e#37148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e569c31320ae6c7be490def60d36de17881f9957\"\u003e\u003ccode\u003ee569c31\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9f227defc2e02a991f05fba50f7de2fbe13b7c5b\"\u003e\u003ccode\u003e9f227de\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.0...v9.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/Owemeone/grimmory/pull/27","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Owemeone%2Fgrimmory/issues/27","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/27/packages"}},{"old_version":"3.5.7","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-04-24T03:10:26.000Z","version_change":"3.5.7 → 3.5.8","issue":{"uuid":"4320244125","node_id":"PR_kwDORvJjTc7VMZtC","number":23,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 16 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-24T03:10:26.000Z","updated_at":"2026-04-24T03:15:15.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":16,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.0.3","new_version":"12.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"com.github.RouHim:jaudiotagger","old_version":"2.0.16","new_version":"2.0.19"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.6","new_version":"4.0.7"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.6.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.4.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 14 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.0.3` | `12.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| com.github.RouHim:jaudiotagger | `2.0.16` | `2.0.19` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.6` | `4.0.7` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.2` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.2.6.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.4.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.0.3 to 12.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `com.github.RouHim:jaudiotagger` from 2.0.16 to 2.0.19\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.6 to 4.0.7\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2d305e6af8b61c6c30f5658cd8c794419e233a53\"\u003e\u003ccode\u003e2d305e6\u003c/code\u003e\u003c/a\u003e Add JDK 25 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/da85336a6e5749354bc65536f493a712401eea4f\"\u003e\u003ccode\u003eda85336\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/123\"\u003e#123\u003c/a\u003e from FasterXML/tatu/3.1/122-switch-to-junit6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7ec5e0ec5ad5e53e12e775537e4717478841d459\"\u003e\u003ccode\u003e7ec5e0e\u003c/code\u003e\u003c/a\u003e Fix \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/122\"\u003e#122\u003c/a\u003e: switch 3.x (starting with 3.1.1) to use JUnit 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ef0977031036f6fcc6d54eaeb93ccd35a2ab2c96\"\u003e\u003ccode\u003eef09770\u003c/code\u003e\u003c/a\u003e Update oss-parent dep\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.2.6.Final to 7.3.2.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 to 9.4.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.4.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.4.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJava 26 support\u003c/li\u003e\n\u003cli\u003eNon-class-based JVM tests\u003c/li\u003e\n\u003cli\u003eEnhanced console progress bar\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.4.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/akankshaa-00\"\u003eakankshaa-00\u003c/a\u003e,\n\u003ca href=\"https://github.com/kelemen\"\u003eAttila Kelemen\u003c/a\u003e,\n\u003ca href=\"https://github.com/Vampire\"\u003eBjörn Kautler\u003c/a\u003e,\n\u003ca href=\"https://github.com/dblood\"\u003edblood\u003c/a\u003e,\n\u003ca href=\"https://github.com/drieks\"\u003eDennis Rieks\u003c/a\u003e,\n\u003ca href=\"https://github.com/duvvuvenkataramana\"\u003eduvvuvenkataramana\u003c/a\u003e,\n\u003ca href=\"https://github.com/wakingrufus\"\u003eJohn Burns\u003c/a\u003e,\n\u003ca href=\"https://github.com/Julianw03\"\u003eJulian\u003c/a\u003e,\n\u003ca href=\"https://github.com/kevinstembridge\"\u003ekevinstembridge\u003c/a\u003e,\n\u003ca href=\"https://github.com/NielsDoucet\"\u003eNiels Doucet\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/rhernandez35\"\u003eRichard Hernandez\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/slovdahl\"\u003eSebastian Lövdahl\u003c/a\u003e,\n\u003ca href=\"https://github.com/stephan2405\"\u003estephan2405\u003c/a\u003e,\n\u003ca href=\"https://github.com/slandelle\"\u003eStephane Landelle\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,\n\u003ca href=\"https://github.com/Pankraz76\"\u003eVincent Potuček\u003c/a\u003e,\n\u003ca href=\"https://github.com/vlsi\"\u003eVladimir Sitnikov\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.4.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.4.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.4.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.4.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\u003c/blockquote\u003e\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/2d6327017519d23b96af35865dc997fcb544fb40\"\u003e\u003ccode\u003e2d63270\u003c/code\u003e\u003c/a\u003e Ignore test (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37180\"\u003e#37180\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/4c15906d6a20acc61f2f7b9272c8cb7a6f708239\"\u003e\u003ccode\u003e4c15906\u003c/code\u003e\u003c/a\u003e Ignore test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9759ac1dec4b3742012397b5f0127a777947b73f\"\u003e\u003ccode\u003e9759ac1\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37178\"\u003e#37178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/aaf6ed46ed8d4c3b9b7a7a751cda5893668b2a42\"\u003e\u003ccode\u003eaaf6ed4\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/47cb78328a6ddc6c1509003ab3264017ed5d9a0a\"\u003e\u003ccode\u003e47cb783\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 progress bar not cleared on SIGINT (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37038\"\u003e#37038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/ef03f1d41b0a65f6aae0931d4746f7359647a7e4\"\u003e\u003ccode\u003eef03f1d\u003c/code\u003e\u003c/a\u003e Fix order-dependent assertion in CrossBuildScriptCachingIntegrationSpec\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/fd26fd36d693337dbf033143a9ac0e71f78a4209\"\u003e\u003ccode\u003efd26fd3\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 taskbar progress bar not cleared on build end or SIGINT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0a84d6751921709fbc7d552a50d9e3b34eb1930d\"\u003e\u003ccode\u003e0a84d67\u003c/code\u003e\u003c/a\u003e Release notes for 9.4.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37148\"\u003e#37148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e569c31320ae6c7be490def60d36de17881f9957\"\u003e\u003ccode\u003ee569c31\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9f227defc2e02a991f05fba50f7de2fbe13b7c5b\"\u003e\u003ccode\u003e9f227de\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.0...v9.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cdome/ollumi/pull/23","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdome%2Follumi/issues/23","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/23/packages"}},{"old_version":"3.5.7","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-04-24T03:10:02.000Z","version_change":"3.5.7 → 3.5.8","issue":{"uuid":"4320242955","node_id":"PR_kwDORpKt9s7VMZd6","number":14,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 15 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-24T03:10:02.000Z","updated_at":"2026-05-08T05:01:03.831Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":15,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.0.3","new_version":"12.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.glassfish.jaxb:jaxb-runtime","old_version":"4.0.6","new_version":"4.0.7"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.0","new_version":"3.1.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.springframework.boot","old_version":"4.0.3","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.2.6.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"9.4.0","new_version":"9.4.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 13 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.0.3` | `12.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| org.glassfish.jaxb:jaxb-runtime | `4.0.6` | `4.0.7` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.0` | `3.1.2` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.3` | `4.0.6` |\n| org.hibernate.orm | `7.2.6.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `9.4.0` | `9.4.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.0.3 to 12.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.glassfish.jaxb:jaxb-runtime` from 4.0.6 to 4.0.7\n\nUpdates `tools.jackson:jackson-bom` from 3.1.0 to 3.1.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\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-bom/commit/0628060381a5b86e3fc07854a27b7453de559b7e\"\u003e\u003ccode\u003e0628060\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/22b8aeec79b87751a41c586404850c526eed1dbe\"\u003e\u003ccode\u003e22b8aee\u003c/code\u003e\u003c/a\u003e Prep for 3.1.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/2d305e6af8b61c6c30f5658cd8c794419e233a53\"\u003e\u003ccode\u003e2d305e6\u003c/code\u003e\u003c/a\u003e Add JDK 25 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/da85336a6e5749354bc65536f493a712401eea4f\"\u003e\u003ccode\u003eda85336\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/123\"\u003e#123\u003c/a\u003e from FasterXML/tatu/3.1/122-switch-to-junit6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/7ec5e0ec5ad5e53e12e775537e4717478841d459\"\u003e\u003ccode\u003e7ec5e0e\u003c/code\u003e\u003c/a\u003e Fix \u003ca href=\"https://redirect.github.com/FasterXML/jackson-bom/issues/122\"\u003e#122\u003c/a\u003e: switch 3.x (starting with 3.1.1) to use JUnit 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ef0977031036f6fcc6d54eaeb93ccd35a2ab2c96\"\u003e\u003ccode\u003eef09770\u003c/code\u003e\u003c/a\u003e Update oss-parent dep\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.0...jackson-bom-3.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.3 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.2.6.Final to 7.3.2.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\nUpdates `gradle-wrapper` from 9.4.0 to 9.4.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.4.1\u003c/h2\u003e\n\u003cp\u003eThe Gradle team is excited to announce Gradle 9.4.1.\u003c/p\u003e\n\u003cp\u003eHere are the highlights of this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eJava 26 support\u003c/li\u003e\n\u003cli\u003eNon-class-based JVM tests\u003c/li\u003e\n\u003cli\u003eEnhanced console progress bar\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://docs.gradle.org/9.4.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/akankshaa-00\"\u003eakankshaa-00\u003c/a\u003e,\n\u003ca href=\"https://github.com/kelemen\"\u003eAttila Kelemen\u003c/a\u003e,\n\u003ca href=\"https://github.com/Vampire\"\u003eBjörn Kautler\u003c/a\u003e,\n\u003ca href=\"https://github.com/dblood\"\u003edblood\u003c/a\u003e,\n\u003ca href=\"https://github.com/drieks\"\u003eDennis Rieks\u003c/a\u003e,\n\u003ca href=\"https://github.com/duvvuvenkataramana\"\u003eduvvuvenkataramana\u003c/a\u003e,\n\u003ca href=\"https://github.com/wakingrufus\"\u003eJohn Burns\u003c/a\u003e,\n\u003ca href=\"https://github.com/Julianw03\"\u003eJulian\u003c/a\u003e,\n\u003ca href=\"https://github.com/kevinstembridge\"\u003ekevinstembridge\u003c/a\u003e,\n\u003ca href=\"https://github.com/NielsDoucet\"\u003eNiels Doucet\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/rhernandez35\"\u003eRichard Hernandez\u003c/a\u003e,\n\u003ca href=\"https://github.com/rpalcolea\"\u003eRoberto Perez Alcolea\u003c/a\u003e,\n\u003ca href=\"https://github.com/slovdahl\"\u003eSebastian Lövdahl\u003c/a\u003e,\n\u003ca href=\"https://github.com/stephan2405\"\u003estephan2405\u003c/a\u003e,\n\u003ca href=\"https://github.com/slandelle\"\u003eStephane Landelle\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,\n\u003ca href=\"https://github.com/Pankraz76\"\u003eVincent Potuček\u003c/a\u003e,\n\u003ca href=\"https://github.com/vlsi\"\u003eVladimir Sitnikov\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eUpgrade instructions\u003c/h2\u003e\n\u003cp\u003eSwitch your build to use Gradle 9.4.1 by updating your wrapper:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e./gradlew wrapper --gradle-version=9.4.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.4.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.4.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\u003c/blockquote\u003e\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/2d6327017519d23b96af35865dc997fcb544fb40\"\u003e\u003ccode\u003e2d63270\u003c/code\u003e\u003c/a\u003e Ignore test (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37180\"\u003e#37180\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/4c15906d6a20acc61f2f7b9272c8cb7a6f708239\"\u003e\u003ccode\u003e4c15906\u003c/code\u003e\u003c/a\u003e Ignore test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9759ac1dec4b3742012397b5f0127a777947b73f\"\u003e\u003ccode\u003e9759ac1\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37178\"\u003e#37178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/aaf6ed46ed8d4c3b9b7a7a751cda5893668b2a42\"\u003e\u003ccode\u003eaaf6ed4\u003c/code\u003e\u003c/a\u003e Make console/SIGINT test deterministic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/47cb78328a6ddc6c1509003ab3264017ed5d9a0a\"\u003e\u003ccode\u003e47cb783\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 progress bar not cleared on SIGINT (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37038\"\u003e#37038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/ef03f1d41b0a65f6aae0931d4746f7359647a7e4\"\u003e\u003ccode\u003eef03f1d\u003c/code\u003e\u003c/a\u003e Fix order-dependent assertion in CrossBuildScriptCachingIntegrationSpec\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/fd26fd36d693337dbf033143a9ac0e71f78a4209\"\u003e\u003ccode\u003efd26fd3\u003c/code\u003e\u003c/a\u003e Fix OSC 9;4 taskbar progress bar not cleared on build end or SIGINT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/0a84d6751921709fbc7d552a50d9e3b34eb1930d\"\u003e\u003ccode\u003e0a84d67\u003c/code\u003e\u003c/a\u003e Release notes for 9.4.1 (\u003ca href=\"https://redirect.github.com/gradle/gradle/issues/37148\"\u003e#37148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/e569c31320ae6c7be490def60d36de17881f9957\"\u003e\u003ccode\u003ee569c31\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gradle/gradle/commit/9f227defc2e02a991f05fba50f7de2fbe13b7c5b\"\u003e\u003ccode\u003e9f227de\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gradle/gradle/compare/v9.4.0...v9.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/erblore/erblore/pull/14","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/erblore%2Ferblore/issues/14","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/14/packages"}},{"old_version":"3.5.7","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-04-24T03:09:48.000Z","version_change":"3.5.7 → 3.5.8","issue":{"uuid":"4320242349","node_id":"PR_kwDOR0sr5c7VMZWB","number":14,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 10 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-24T03:09:48.000Z","updated_at":"2026-04-24T03:13:26.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":10,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.7","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"12.2.0","new_version":"12.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.44","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"com.github.junrar:junrar","old_version":"7.5.8","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"org.jsoup:jsoup","old_version":"1.22.1","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"tools.jackson:jackson-bom","old_version":"3.1.1","new_version":"3.1.2","repository_url":"https://github.com/FasterXML/jackson-bom"},{"name":"org.springframework.boot","old_version":"4.0.5","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"7.3.0.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 10 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.7` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `12.2.0` | `12.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.44` | `1.18.46` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.8` | `7.5.10` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.22.1` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `3.0.2` | `3.0.3` |\n| [tools.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `3.1.1` | `3.1.2` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `4.0.5` | `4.0.6` |\n| org.hibernate.orm | `7.3.0.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.7 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 12.2.0 to 12.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.44 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.44...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.junrar:junrar` from 7.5.8 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\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/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.jsoup:jsoup` from 1.22.1 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\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/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.22.1...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\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/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tools.jackson:jackson-bom` from 3.1.1 to 3.1.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/0ae1c2ae270dabe8e21700cbcee1c266b54e84f0\"\u003e\u003ccode\u003e0ae1c2a\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jackson-bom-3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/3c171ebd5d6c5d8f6e8d4f3614cf9b4f0a8babb9\"\u003e\u003ccode\u003e3c171eb\u003c/code\u003e\u003c/a\u003e Prep for 3.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/8046ced071e0b36747bae0f0a96fa21914de1303\"\u003e\u003ccode\u003e8046ced\u003c/code\u003e\u003c/a\u003e Post-release dep version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FasterXML/jackson-bom/commit/ea00ca4cc59ba656a17a071e30a68387e51d3e0d\"\u003e\u003ccode\u003eea00ca4\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare for next development iteration\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/FasterXML/jackson-bom/compare/jackson-bom-3.1.1...jackson-bom-3.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 4.0.5 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50174\"\u003e#50174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50077\"\u003e#50077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClassic starters are missing several modules \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50071\"\u003e#50071\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eModule spring-boot-resttestclient is missing from spring-boot-starter-test-classic \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/50069\"\u003e#50069\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnnotations like \u003ccode\u003e@Ssl\u003c/code\u003e don't work on \u003ccode\u003e@Bean\u003c/code\u003e methods when using \u003ccode\u003e@ServiceConnection\u003c/code\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50064\"\u003e#50064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnversRevisionRepositoriesRegistrar should reuse \u003ccode\u003e@EnableEnversRepositories\u003c/code\u003e rather than configuring the JPA counterpart \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50039\"\u003e#50039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWebFlux Cloud Foundry links endpoint includes query string from received request in resolved links \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50017\"\u003e#50017\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImports on a containing test class are ignored when a nested class has imports \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50012\"\u003e#50012\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWith spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49951\"\u003e#49951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e500 response from env endpoint when supplied pattern is invalid \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49946\"\u003e#49946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49945\"\u003e#49945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP method is lost when configuring excludes in EndpointRequest \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49943\"\u003e#49943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonor HttpMethod for reactive additional endpoint paths \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49880\"\u003e#49880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/artemis image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49869\"\u003e#49869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocker Compose support doesn't work with apache/activemq image \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49866\"\u003e#49866\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49854\"\u003e#49854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAPI versioning path strategy should be applied path last as it is not meant to yield \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49800\"\u003e#49800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:notebook_with_decorative_cover: Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs to encourage Java fundamentals for beginners that prefer to learn that way \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50146\"\u003e#50146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHTTP Service Interface Clients still document that API versioning can be configured via properties \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50126\"\u003e#50126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the observability section of the Lettuce documentation is broken \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50097\"\u003e#50097\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJavadoc for StaticResourceLocation.FAVICON doesn't describe icons location \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50085\"\u003e#50085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMySamlRelyingPartyConfiguration is missing a Kotlin sample \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50024\"\u003e#50024\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncorrect default value for management.httpexchanges.recording.include in configuration metadata \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50019\"\u003e#50019\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink to the Kubernetes documentation when discussing startup probes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50015\"\u003e#50015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTypo in JdbcSessionAutoConfiguration Javadoc \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49873\"\u003e#49873\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify that configuration property default values are not available through the Environment \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49851\"\u003e#49851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocument the need for Liquibase and Flyway starters \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49839\"\u003e#49839\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKafka documentation refers to deprecated JSON serializer and deserializer classes \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/pull/49826\"\u003e#49826\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Elasticsearch Client 9.2.8 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50027\"\u003e#50027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Groovy 5.0.5 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49911\"\u003e#49911\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Hibernate 7.2.12.Final \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50134\"\u003e#50134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to Jackson Bom 3.1.2 \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50051\"\u003e#50051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1\"\u003eJaxen 2.0.1\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50104\"\u003e#50104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5\"\u003eJaybird 6.0.5\u003c/a\u003e \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/49914\"\u003e#49914\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/spring-projects/spring-boot/commit/8821ad2cd381bb4b9615a61479e1de7305a8ba39\"\u003e\u003ccode\u003e8821ad2\u003c/code\u003e\u003c/a\u003e Release v4.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9e4048a03f17adfe78057a3c4d5b4693305c0ae0\"\u003e\u003ccode\u003e9e4048a\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/20bb11c3984802990572ddbeae8b66885a8f2462\"\u003e\u003ccode\u003e20bb11c\u003c/code\u003e\u003c/a\u003e Next development version (v3.5.15-SNAPSHOT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/98daa8ea30f39a5b0ca6768b5cbc2dc8698ef4e1\"\u003e\u003ccode\u003e98daa8e\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/9dc5aa2863f598a15d3dfa116f4b89249daba7e7\"\u003e\u003ccode\u003e9dc5aa2\u003c/code\u003e\u003c/a\u003e Polish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/874f6294b91da18367b8b5ab7b2fad3fa23cfba6\"\u003e\u003ccode\u003e874f629\u003c/code\u003e\u003c/a\u003e Fix default security with actuator but without health\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/e41b3bf731d1134bc18ec1f68ac01e0fe1c54923\"\u003e\u003ccode\u003ee41b3bf\u003c/code\u003e\u003c/a\u003e Enable hostname verification for SSL connections to Elasticsearch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/ef8527bb0ef8f564f4f9c57a7be99a7aa96c6ab0\"\u003e\u003ccode\u003eef8527b\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/f533a4549c3999aac30cb5830f07dc304933e93d\"\u003e\u003ccode\u003ef533a45\u003c/code\u003e\u003c/a\u003e Do not follow symlinks when writing PID file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spring-projects/spring-boot/commit/4a7bd332b6d19fef1aa4cf28434985f2b03a2e0f\"\u003e\u003ccode\u003e4a7bd33\u003c/code\u003e\u003c/a\u003e Merge branch '3.5.x' into 4.0.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spring-projects/spring-boot/compare/v4.0.5...v4.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.hibernate.orm` from 7.3.0.Final to 7.3.2.Final\n\nUpdates `com.github.ben-manes.versions` from 0.53.0 to 0.54.0\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/willianpaixao/booklore/pull/14","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/willianpaixao%2Fbooklore/issues/14","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/14/packages"}},{"old_version":"3.5.6","new_version":"3.5.8","update_type":"patch","path":null,"pr_created_at":"2026-04-24T03:09:08.000Z","version_change":"3.5.6 → 3.5.8","issue":{"uuid":"4320240453","node_id":"PR_kwDORJ5GTM7VMY-A","number":18,"state":"open","title":"chore(deps): bump the gradle-dependencies group across 1 directory with 22 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-24T03:09:08.000Z","updated_at":"2026-04-24T03:10:32.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"gradle-dependencies","update_count":22,"packages":[{"name":"org.mariadb.jdbc:mariadb-java-client","old_version":"3.5.6","new_version":"3.5.8","repository_url":"https://github.com/mariadb-corporation/mariadb-connector-j"},{"name":"org.flywaydb:flyway-mysql","old_version":"11.19.0","new_version":"12.4.0"},{"name":"org.projectlombok:lombok","old_version":"1.18.42","new_version":"1.18.46","repository_url":"https://github.com/projectlombok/lombok"},{"name":"org.apache.pdfbox:pdfbox","old_version":"3.0.6","new_version":"3.0.7"},{"name":"com.twelvemonkeys.imageio:imageio-jpeg","old_version":"3.13.0","new_version":"3.13.1"},{"name":"io.documentnode:epub4j-core","old_version":"4.2.2","new_version":"4.2.3","repository_url":"https://github.com/documentnode/epub4j"},{"name":"com.github.junrar:junrar","old_version":"7.5.7","new_version":"7.5.10","repository_url":"https://github.com/junrar/junrar"},{"name":"com.fasterxml.jackson.datatype:jackson-datatype-jsr310","old_version":"2.20.1","new_version":"2.21.2"},{"name":"org.jsoup:jsoup","old_version":"1.21.2","new_version":"1.22.2","repository_url":"https://github.com/jhy/jsoup"},{"name":"org.springdoc:springdoc-openapi-starter-webmvc-ui","old_version":"2.8.14","new_version":"3.0.3","repository_url":"https://github.com/springdoc/springdoc-openapi"},{"name":"org.tukaani:xz","old_version":"1.11","new_version":"1.12","repository_url":"https://github.com/tukaani-project/xz-java"},{"name":"com.github.ben-manes.caffeine:caffeine","old_version":"3.2.0","new_version":"3.2.3","repository_url":"https://github.com/ben-manes/caffeine"},{"name":"org.assertj:assertj-core","old_version":"3.27.6","new_version":"3.27.7","repository_url":"https://github.com/assertj/assertj"},{"name":"org.springframework.boot","old_version":"3.5.8","new_version":"4.0.6","repository_url":"https://github.com/spring-projects/spring-boot"},{"name":"org.hibernate.orm","old_version":"6.6.36.Final","new_version":"7.3.2.Final"},{"name":"com.github.ben-manes.versions","old_version":"0.53.0","new_version":"0.54.0"},{"name":"gradle-wrapper","old_version":"8.14.3","new_version":"9.4.1","repository_url":"https://github.com/gradle/gradle"}],"path":null,"ecosystem":"maven"},"body":"Bumps the gradle-dependencies group with 17 updates in the /booklore-api directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) | `3.5.6` | `3.5.8` |\n| org.flywaydb:flyway-mysql | `11.19.0` | `12.4.0` |\n| [org.projectlombok:lombok](https://github.com/projectlombok/lombok) | `1.18.42` | `1.18.46` |\n| org.apache.pdfbox:pdfbox | `3.0.6` | `3.0.7` |\n| com.twelvemonkeys.imageio:imageio-jpeg | `3.13.0` | `3.13.1` |\n| [io.documentnode:epub4j-core](https://github.com/documentnode/epub4j) | `4.2.2` | `4.2.3` |\n| [com.github.junrar:junrar](https://github.com/junrar/junrar) | `7.5.7` | `7.5.10` |\n| com.fasterxml.jackson.datatype:jackson-datatype-jsr310 | `2.20.1` | `2.21.2` |\n| [org.jsoup:jsoup](https://github.com/jhy/jsoup) | `1.21.2` | `1.22.2` |\n| [org.springdoc:springdoc-openapi-starter-webmvc-ui](https://github.com/springdoc/springdoc-openapi) | `2.8.14` | `3.0.3` |\n| [org.tukaani:xz](https://github.com/tukaani-project/xz-java) | `1.11` | `1.12` |\n| [com.github.ben-manes.caffeine:caffeine](https://github.com/ben-manes/caffeine) | `3.2.0` | `3.2.3` |\n| [org.assertj:assertj-core](https://github.com/assertj/assertj) | `3.27.6` | `3.27.7` |\n| [org.springframework.boot](https://github.com/spring-projects/spring-boot) | `3.5.8` | `4.0.6` |\n| org.hibernate.orm | `6.6.36.Final` | `7.3.2.Final` |\n| com.github.ben-manes.versions | `0.53.0` | `0.54.0` |\n| [gradle-wrapper](https://github.com/gradle/gradle) | `8.14.3` | `9.4.1` |\n\n\nUpdates `org.mariadb.jdbc:mariadb-java-client` from 3.5.6 to 3.5.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/releases\"\u003eorg.mariadb.jdbc:mariadb-java-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMariaDB Connector/Java 3.5.7\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.7\"\u003e3.5.7\u003c/a\u003e (Dec 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.6...3.5.7\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1282 - Added TLS SNI (Server Name Indication) support\u003c/li\u003e\n\u003cli\u003eCONJ-1271 - Added MariaDbDataTruncation exception that includes MariaDB error code and error message\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1291 - Fixed ConnectionPoolDataSource incompatibility and connection leaks due to internal ConnectionEventListener in MariaDB Connector/J 3.5.x\u003c/li\u003e\n\u003cli\u003eCONJ-1286 - Fixed MariaDbPoolPinnedConnection thread-safety issue\u003c/li\u003e\n\u003cli\u003eCONJ-1283 - Fixed rewriteBatchedStatements introduced in 3.5.6 bug when having parentesis after VALUES parts\u003c/li\u003e\n\u003cli\u003eCONJ-1287 - Fixed authentication plugin multi-exchange prefix (0x01) handling introduced in MDEV-37554\u003c/li\u003e\n\u003cli\u003eCONJ-1290 - Fixed NullPointerException in MultiPrimaryReplicaClient\u003c/li\u003e\n\u003cli\u003eCONJ-1295 - Fixed MariaDbClob compilation with JDK 26+\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/mariadb-corporation/mariadb-connector-j/blob/main/CHANGELOG.md\"\u003eorg.mariadb.jdbc:mariadb-java-client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.8\"\u003e3.5.8\u003c/a\u003e (Apr 2026)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.7...3.5.8\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1305 - XAResource.isSameRM() incorrectly returns true when rewriteBatchedStatements differs between connections\u003c/li\u003e\n\u003cli\u003eCONJ-1303 - Statement.cancel() fails to kill running query during result streaming\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eOther\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1298 - Performance improvement: avoid decoding extended format\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/tree/3.5.7\"\u003e3.5.7\u003c/a\u003e (Dec 2025)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.6...3.5.7\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eKey Enhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1282 - Added TLS SNI (Server Name Indication) support\u003c/li\u003e\n\u003cli\u003eCONJ-1271 - Added MariaDbDataTruncation exception that includes MariaDB error code and error message\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eIssues Resolved\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCONJ-1291 - Fixed ConnectionPoolDataSource incompatibility and connection leaks due to internal ConnectionEventListener in MariaDB Connector/J 3.5.x\u003c/li\u003e\n\u003cli\u003eCONJ-1286 - Fixed MariaDbPoolPinnedConnection thread-safety issue\u003c/li\u003e\n\u003cli\u003eCONJ-1283 - Fixed rewriteBatchedStatements introduced in 3.5.6 bug when having parentesis after VALUES parts\u003c/li\u003e\n\u003cli\u003eCONJ-1287 - Fixed authentication plugin multi-exchange prefix (0x01) handling introduced in MDEV-37554\u003c/li\u003e\n\u003cli\u003eCONJ-1290 - Fixed NullPointerException in MultiPrimaryReplicaClient\u003c/li\u003e\n\u003cli\u003eCONJ-1295 - Fixed MariaDbClob compilation with JDK 26+\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/26b34a2f060070beb73515cfd2a49fabc8728843\"\u003e\u003ccode\u003e26b34a2\u003c/code\u003e\u003c/a\u003e Merge branch 'develop'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/06d6efee7838ab8f89ef0f7f362c6b4a95754630\"\u003e\u003ccode\u003e06d6efe\u003c/code\u003e\u003c/a\u003e bump CI actions/checkout@v5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a86a83c8fd1fa84d8d4349baab3b29df8f575192\"\u003e\u003ccode\u003ea86a83c\u003c/code\u003e\u003c/a\u003e bump 3.5.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/975f9919232b21f40d823423eac6e32d87ea8e35\"\u003e\u003ccode\u003e975f991\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to implement Codec directly and extract shared...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/75bb509521661603e0e90dd6dd5942d1382bf499\"\u003e\u003ccode\u003e75bb509\u003c/code\u003e\u003c/a\u003e [misc] code formatting cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/4c0b6a0ddd95f42fa866ce0d08e384caa2553d43\"\u003e\u003ccode\u003e4c0b6a0\u003c/code\u003e\u003c/a\u003e [misc] refactor TimestampCodec to extend UtilDateCodec and extract common dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/a5b7fb1a26277a076052dbbd1a7ee2bacd4f602f\"\u003e\u003ccode\u003ea5b7fb1\u003c/code\u003e\u003c/a\u003e [misc] convert Reader and Writer from interfaces to final class implementatio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/d31eb060fc66e9e37479e18a38bb1401d53ecb63\"\u003e\u003ccode\u003ed31eb06\u003c/code\u003e\u003c/a\u003e [misc] convert ReadableByteBuf from interface to final class implementation, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/11d45a9e6ea4d942e75747132bb8982471d890b8\"\u003e\u003ccode\u003e11d45a9\u003c/code\u003e\u003c/a\u003e [misc] optimize binary row decoder null bitmap checks and simplify signed Big...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/commit/5aad14c381cbc2c4e0383ffed275306f359bd508\"\u003e\u003ccode\u003e5aad14c\u003c/code\u003e\u003c/a\u003e [misc] optimize BigInt column decoding and improve type safety in codec inter...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mariadb-corporation/mariadb-connector-j/compare/3.5.6...3.5.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.flywaydb:flyway-mysql` from 11.19.0 to 12.4.0\n\nUpdates `org.projectlombok:lombok` from 1.18.42 to 1.18.46\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown\"\u003eorg.projectlombok:lombok's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.18.46 (April 22nd, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePLATFORM: JDK26 support added \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4019\"\u003e#4019\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003ePLATFORM: Spring Tools Suite 5 supported \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3985\"\u003e#3985\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e no longer stops generating \u003ccode\u003e@JsonProperty\u003c/code\u003e once an explicit \u003ccode\u003e@JsonIgnore\u003c/code\u003e annotations is encountered \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4022\"\u003e#4022\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: In eclipse, mixing \u003ccode\u003e@Jacksonized\u003c/code\u003e and \u003ccode\u003efluent = true\u003c/code\u003e no longer causes the error \u003ccode\u003ecom.fasterxml.jackson.annotation.JsonProperty is not a repeatable annotation interface\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3934\"\u003e#3934\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: Some finishing touches for v1.18.44's support of Jackson3 \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ev1.18.44 (March 11th, 2026)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFEATURE: \u003ccode\u003e@Jacksonized\u003c/code\u003e now supports both Jackson2 and Jackson3; you'll get a warning until you configure which one (or even both!) you want lombok to generate. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3950\"\u003e#3950\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: On JDK25, \u003ccode\u003eval\u003c/code\u003e and \u003ccode\u003e@ExtensionMethod\u003c/code\u003e could sometimes cause erroneous errors (in that you see errors but compilation succeeds anyway) using javac. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3947\"\u003e#3947\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eBUGFIX: \u003ccode\u003e@Jacksonized\u003c/code\u003e + fields marked \u003ccode\u003etransient\u003c/code\u003e would result in those transient fields being serialised which is surprising (and thus undesired) behaviour. \u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/3936\"\u003e#3936\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/projectlombok/lombok/commit/936ca59baf844fd6c0ad641974295498785d8091\"\u003e\u003ccode\u003e936ca59\u003c/code\u003e\u003c/a\u003e [build] lombok's launcher is still intended to be 1.4 compatible, or at least...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/fcdab3f29e1b48c8f4b33ef9231ec2587a43d122\"\u003e\u003ccode\u003efcdab3f\u003c/code\u003e\u003c/a\u003e [version] pre-release version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/1cb7d49c5d2dc98af7a66413d8119dec285d0666\"\u003e\u003ccode\u003e1cb7d49\u003c/code\u003e\u003c/a\u003e [changelog]\u003ca href=\"https://redirect.github.com/projectlombok/lombok/issues/4004\"\u003e#4004\u003c/a\u003e Mention Jackson3 final touches in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/12a15b00555ec8097eca2bf7d77c2c2124e13e0e\"\u003e\u003ccode\u003e12a15b0\u003c/code\u003e\u003c/a\u003e Fix: Bump EA_JDK to 27 (25 and 26 have been released)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/2be766cfc2ef56f2d986f28f734c98535d611aee\"\u003e\u003ccode\u003e2be766c\u003c/code\u003e\u003c/a\u003e Merge branch 'jackson3-final-touches'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/290fa4c8539c7e97b47f7e80033e078127050eb5\"\u003e\u003ccode\u003e290fa4c\u003c/code\u003e\u003c/a\u003e [trivial] constantize the warning we spit out for ambiguous jackson2/3, and m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e6567b6621f86b43033ab4a75e0273780e18e998\"\u003e\u003ccode\u003ee6567b6\u003c/code\u003e\u003c/a\u003e test: Add Jackson 3 test cases and version ambiguity warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/45e72e241abe98dcfb66408402da825dd2b8e925\"\u003e\u003ccode\u003e45e72e2\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 databind/dataformat annotations to HandlerUtil copy lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/184d42363d86446a63b6270ac1eb352dc43ae76c\"\u003e\u003ccode\u003e184d423\u003c/code\u003e\u003c/a\u003e feat: Add Jackson 3 support to \u003ca href=\"https://github.com/Jacksonized\"\u003e\u003ccode\u003e@​Jacksonized\u003c/code\u003e\u003c/a\u003e handlers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/projectlombok/lombok/commit/e027ad0f1515bd33d4d329d90e59dccbaf44651e\"\u003e\u003ccode\u003ee027ad0\u003c/code\u003e\u003c/a\u003e refactored to ShadowClassLoader use Collections::enumeration instead of Vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/projectlombok/lombok/compare/v1.18.42...v1.18.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.apache.pdfbox:pdfbox` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:pdfbox-io` from 3.0.6 to 3.0.7\n\nUpdates `org.apache.pdfbox:xmpbox` from 3.0.6 to 3.0.7\n\nUpdates `com.twelvemonkeys.imageio:imageio-jpeg` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-tiff` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-webp` from 3.13.0 to 3.13.1\n\nUpdates `com.twelvemonkeys.imageio:imageio-bmp` from 3.13.0 to 3.13.1\n\nUpdates `io.documentnode:epub4j-core` from 4.2.2 to 4.2.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/documentnode/epub4j/commit/4bf55082feba0496f98b867ec03ebec5f393b649\"\u003e\u003ccode\u003e4bf5508\u003c/code\u003e\u003c/a\u003e Migrate Maven Central publishing to new Central Portal API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/documentnode/epub4j/commit/b153885ef8aefbe4063a40894c048a5cc2b5a354\"\u003e\u003ccode\u003eb153885\u003c/code\u003e\u003c/a\u003e Load sdkman environment before running gradle commands\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/documentnode/epub4j/compare/v4.2.2...v4.2.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.junrar:junrar` from 7.5.7 to 7.5.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/releases\"\u003ecom.github.junrar:junrar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v7.5.10\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier Roebroeck\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.9\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eWe'd like to thank the following people for their contributions:\nGauthier, Ryan Campbell\u003c/p\u003e\n\u003ch2\u003eRelease v7.5.8\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/junrar/junrar/blob/master/CHANGELOG.md\"\u003ecom.github.junrar:junrar's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.9...v7.5.10\"\u003e7.5.10\u003c/a\u003e (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handling of files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/d77e9a8\"\u003ed77e9a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧪 Tests\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edisable test on windows due to path (\u003ca href=\"https://github.com/junrar/junrar/commits/154e3bf\"\u003e154e3bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epublish test results (\u003ca href=\"https://github.com/junrar/junrar/commits/e36ee09\"\u003ee36ee09\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate homebrew action (\u003ca href=\"https://github.com/junrar/junrar/commits/a60857b\"\u003ea60857b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.8...v7.5.9\"\u003e7.5.9\u003c/a\u003e (2026-04-13)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eArrayIndexOutOfBoundsException in solid RAR v20 archive extraction (\u003ca href=\"https://github.com/junrar/junrar/commits/9b69c6b\"\u003e9b69c6b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eseek past SubHeader packed data after parsing to prevent corrupt reads (\u003ca href=\"https://github.com/junrar/junrar/commits/ad7ad33\"\u003ead7ad33\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/7e1b558\"\u003e7e1b558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.22.0 to 5.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/f800f10\"\u003ef800f10\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/1886aec\"\u003e1886aec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.4.0 to 9.4.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/832f685\"\u003e832f685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle/actions from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/b2f434d\"\u003eb2f434d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump codecov/codecov-action from 5 to 6 (\u003ca href=\"https://github.com/junrar/junrar/commits/aaaede2\"\u003eaaaede2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump EndBug/add-and-commit from 9 to 10 (\u003ca href=\"https://github.com/junrar/junrar/commits/884dde4\"\u003e884dde4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 9.3.1 to 9.4.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/5ff5c7e\"\u003e5ff5c7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.mockito:mockito-core from 5.21.0 to 5.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/d9e9e49\"\u003ed9e9e49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.26 to 1.5.32 (\u003ca href=\"https://github.com/junrar/junrar/commits/935ece8\"\u003e935ece8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.jreleaser from 1.22.0 to 1.23.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/000fcdb\"\u003e000fcdb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump actions/upload-artifact from 6 to 7 (\u003ca href=\"https://github.com/junrar/junrar/commits/2c83103\"\u003e2c83103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.7...v7.5.8\"\u003e7.5.8\u003c/a\u003e (2026-02-26)\u003c/h1\u003e\n\u003ch2\u003e🐛 Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebetter handle files outside directory when extracting (\u003ca href=\"https://github.com/junrar/junrar/commits/947ff1d\"\u003e947ff1d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠  Build\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003edeps\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebump jreleaser to 1.22.0 (\u003ca href=\"https://github.com/junrar/junrar/commits/a489f58\"\u003ea489f58\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump gradle-wrapper from 8.14 to 9.3.1 (\u003ca href=\"https://github.com/junrar/junrar/commits/a319fc7\"\u003ea319fc7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.core:jackson-databind (\u003ca href=\"https://github.com/junrar/junrar/commits/c7041fc\"\u003ec7041fc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (\u003ca href=\"https://github.com/junrar/junrar/commits/618feeb\"\u003e618feeb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.24 to 1.5.26 (\u003ca href=\"https://github.com/junrar/junrar/commits/55399ea\"\u003e55399ea\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump org.assertj:assertj-core from 3.27.6 to 3.27.7 (\u003ca href=\"https://github.com/junrar/junrar/commits/de33003\"\u003ede33003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.23 to 1.5.24 (\u003ca href=\"https://github.com/junrar/junrar/commits/a4ba2c1\"\u003ea4ba2c1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebump ch.qos.logback:logback-classic from 1.5.22 to 1.5.23 (\u003ca href=\"https://github.com/junrar/junrar/commits/75864b6\"\u003e75864b6\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/junrar/junrar/commit/e36ee091ad7311a021e1c928ada103a3eab2d890\"\u003e\u003ccode\u003ee36ee09\u003c/code\u003e\u003c/a\u003e ci: publish test results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/154e3bf7b05bb6dcad5437a8fd8e99a8da916373\"\u003e\u003ccode\u003e154e3bf\u003c/code\u003e\u003c/a\u003e test: disable test on windows due to path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/d77e9a83eb721cd51f9c23d7869d0e6ad7f952d7\"\u003e\u003ccode\u003ed77e9a8\u003c/code\u003e\u003c/a\u003e fix: better handling of files outside directory when extracting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/a60857b35c17dbd5354a37816421d7b051a8ba03\"\u003e\u003ccode\u003ea60857b\u003c/code\u003e\u003c/a\u003e ci: update homebrew action\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/72cd364f47bd396e208cd82ca7aa98759ab84f01\"\u003e\u003ccode\u003e72cd364\u003c/code\u003e\u003c/a\u003e chore(release): 7.5.9 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/7e1b5581f9d622b96e9e2a8574188027e7642634\"\u003e\u003ccode\u003e7e1b558\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/f800f10fa46f803f1220f508a40f59af29eb5118\"\u003e\u003ccode\u003ef800f10\u003c/code\u003e\u003c/a\u003e build(deps): bump org.mockito:mockito-core from 5.22.0 to 5.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/1886aecf253467ff8f98fc1187237605cf59fbb0\"\u003e\u003ccode\u003e1886aec\u003c/code\u003e\u003c/a\u003e build(deps): bump com.fasterxml.jackson.core:jackson-databind\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/832f6857128bcd678d76bf263f8ee1533a1e8a86\"\u003e\u003ccode\u003e832f685\u003c/code\u003e\u003c/a\u003e build(deps): bump gradle-wrapper from 9.4.0 to 9.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/junrar/junrar/commit/9b69c6b708dd88b925ba91fde563869cc0f8f586\"\u003e\u003ccode\u003e9b69c6b\u003c/code\u003e\u003c/a\u003e fix: ArrayIndexOutOfBoundsException in solid RAR v20 archive extraction\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/junrar/junrar/compare/v7.5.7...v7.5.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.fasterxml.jackson.datatype:jackson-datatype-jsr310` from 2.20.1 to 2.21.2\n\nUpdates `org.jsoup:jsoup` from 1.21.2 to 1.22.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/releases\"\u003eorg.jsoup:jsoup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.2\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.2\u003c/strong\u003e is out now, with fixes and refinements across the library. It makes editing the DOM during traversal more predictable, refreshes the default HTML tag definitions with newer elements and better text boundaries, and improves reliability in parsing and HTTP transport. The release also fixes a number of edge cases in cleaning, stream parsing, XML doctype handling, and Android packaging.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jhy/jsoup/blob/HEAD/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch2\u003eImprovements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBuild Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eMy sincere thanks to everyone who contributed to this release!\nIf you have any suggestions for the next release, I would love to hear them; please get in touch via \u003ca href=\"https://github.com/jhy/jsoup/discussions\"\u003ejsoup discussions\u003c/a\u003e, or with me \u003ca href=\"https://jhedley.com/\"\u003edirectly\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eYou can also \u003c!-- raw HTML omitted --\u003efollow me\u003c!-- raw HTML omitted --\u003e (\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e@\u003ca href=\"mailto:jhy@tilde.zone\"\u003ejhy@tilde.zone\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e) on Mastodon / Fediverse to receive occasional notes about jsoup releases.\u003c/p\u003e\n\u003ch2\u003ejsoup Java HTML Parser release 1.22.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup 1.22.1\u003c/strong\u003e is out now, adding support for the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors, a configurable maximum parser depth, and numerous bug fixes and improvements.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ejsoup\u003c/strong\u003e is a Java library for working with real-world HTML and XML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://jsoup.org/download\"\u003e\u003cstrong\u003eDownload\u003c/strong\u003e\u003c/a\u003e jsoup now.\u003c/p\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for using the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors (e.g. \u003ccode\u003e[attr~=regex]\u003c/code\u003e, \u003ccode\u003e:matches(regex)\u003c/code\u003e), which ensures linear-time performance for regex evaluation. This allows safer handling of arbitrary user-supplied query regexes. To enable, add the \u003ccode\u003ecom.google.re2j\u003c/code\u003e dependency to your classpath, e.g.:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e  \u0026lt;dependency\u0026gt;\r\n    \u0026lt;groupId\u0026gt;com.google.re2j\u0026lt;/groupId\u0026gt;\r\n    \u0026lt;artifactId\u0026gt;re2j\u0026lt;/artifactId\u0026gt;\r\n    \u0026lt;version\u0026gt;1.8\u0026lt;/version\u0026gt;\r\n  \u0026lt;/dependency\u0026gt;\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e(If you already have that dependency in your classpath, but you want to keep using the Java regex engine, you can disable re2j via \u003ccode\u003eSystem.setProperty(\u0026quot;jsoup.useRe2j\u0026quot;, \u0026quot;false\u0026quot;)\u003c/code\u003e.) You can confirm that the re2j engine has been enabled correctly by calling \u003ccode\u003eRegex.usingRe2j()\u003c/code\u003e. \u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2407\"\u003e#2407\u003c/a\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jhy/jsoup/blob/master/CHANGES.md\"\u003eorg.jsoup:jsoup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.22.2 (2026-Apr-20)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpanded and clarified \u003ccode\u003eNodeTraversor\u003c/code\u003e support for in-place DOM rewrites during \u003ccode\u003eNodeVisitor.head()\u003c/code\u003e. Current-node edits such as \u003ccode\u003eremove\u003c/code\u003e, \u003ccode\u003ereplace\u003c/code\u003e, and \u003ccode\u003eunwrap\u003c/code\u003e now recover more predictably, while traversal stays within the original root subtree. This makes single-pass tree cleanup and normalization visitors easier to write, for example when unwrapping presentational elements or replacing text nodes as you walk the DOM. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocumentation: clarified that a configured \u003ccode\u003eCleaner\u003c/code\u003e may be reused across concurrent threads, and that shared \u003ccode\u003eSafelist\u003c/code\u003e instances should not be mutated while in use. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2473\"\u003e#2473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdated the default HTML \u003ccode\u003eTagSet\u003c/code\u003e for current HTML elements: added \u003ccode\u003edialog\u003c/code\u003e, \u003ccode\u003esearch\u003c/code\u003e, \u003ccode\u003epicture\u003c/code\u003e, and \u003ccode\u003eslot\u003c/code\u003e; made \u003ccode\u003eins\u003c/code\u003e, \u003ccode\u003edel\u003c/code\u003e, \u003ccode\u003ebutton\u003c/code\u003e, \u003ccode\u003eaudio\u003c/code\u003e, \u003ccode\u003evideo\u003c/code\u003e, and \u003ccode\u003ecanvas\u003c/code\u003e inline by default (\u003ccode\u003eTag#isInline()\u003c/code\u003e, aligned to phrasing content in the spec); and added readable \u003ccode\u003eElement.text()\u003c/code\u003e boundaries for controls and embedded objects via the new \u003ccode\u003eTag.TextBoundary\u003c/code\u003e option. This improves pretty-printing and keeps normalized text from running adjacent words together. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2493\"\u003e#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAndroid (R8/ProGuard): added a rule to ignore the optional \u003ccode\u003ere2j\u003c/code\u003e dependency when not present. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2459\"\u003e#2459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed a \u003ccode\u003eNodeTraversor\u003c/code\u003e regression in 1.21.2 where removing or replacing the current node during \u003ccode\u003ehead()\u003c/code\u003e could revisit the replacement node and loop indefinitely. The traversal docs now also clarify which inserted nodes are visited in the current pass. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2472\"\u003e#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eParsing during charset sniffing no longer fails if an advisory \u003ccode\u003eavailable()\u003c/code\u003e call throws \u003ccode\u003eIOException\u003c/code\u003e, as seen on JDK 8 \u003ccode\u003eHttpURLConnection\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2474\"\u003e#2474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer makes relative URL attributes in the input document absolute when cleaning or validating a \u003ccode\u003eDocument\u003c/code\u003e. URL normalization now applies only to the cleaned output, and \u003ccode\u003eSafelist.isSafeAttribute()\u003c/code\u003e is side effect free. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2475\"\u003e#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eCleaner\u003c/code\u003e no longer duplicates enforced attributes when the input \u003ccode\u003eDocument\u003c/code\u003e preserves attribute case. A case-variant source attribute is now replaced by the enforced attribute in the cleaned output. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2476\"\u003e#2476\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIf a per-request SOCKS proxy is configured, jsoup now avoids using the JDK \u003ccode\u003eHttpClient\u003c/code\u003e, because the JDK would silently ignore that proxy and attempt to connect directly. Those requests now fall back to the legacy \u003ccode\u003eHttpURLConnection\u003c/code\u003e transport instead, which does support SOCKS. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2468\"\u003e#2468\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnection.Response.streamParser()\u003c/code\u003e and \u003ccode\u003eDataUtil.streamParser(Path, ...)\u003c/code\u003e could fail on small inputs without a declared charset, if the initial 5 KB charset sniff fully consumed the input and closed it before the stream parse began. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2483\"\u003e#2483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIn XML mode, doctypes with an internal subset, such as \u003ccode\u003e\u0026lt;!DOCTYPE root [\u0026lt;!ENTITY name \u0026quot;value\u0026quot;\u0026gt;]\u0026gt;\u003c/code\u003e, now round-trip correctly. The subset is preserved as raw text only; entities are not expanded and external DTDs are not loaded. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2486\"\u003e#2486\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBuild Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated the integration test server from Jetty to Netty, which actively maintains support for our minimum JDK target (8). \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2491\"\u003e#2491\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.22.1 (2026-Jan-01)\u003c/h2\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for using the \u003ccode\u003ere2j\u003c/code\u003e regular expression engine for regex-based CSS selectors (e.g. \u003ccode\u003e[attr~=regex]\u003c/code\u003e, \u003ccode\u003e:matches(regex)\u003c/code\u003e), which ensures linear-time performance for regex evaluation. This allows safer handling of arbitrary user-supplied query regexes. To enable, add the \u003ccode\u003ecom.google.re2j\u003c/code\u003e dependency to your classpath, e.g.:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e  \u0026lt;dependency\u0026gt;\n    \u0026lt;groupId\u0026gt;com.google.re2j\u0026lt;/groupId\u0026gt;\n    \u0026lt;artifactId\u0026gt;re2j\u0026lt;/artifactId\u0026gt;\n    \u0026lt;version\u0026gt;1.8\u0026lt;/version\u0026gt;\n  \u0026lt;/dependency\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e(If you already have that dependency in your classpath, but you want to keep using the Java regex engine, you can disable re2j via \u003ccode\u003eSystem.setProperty(\u0026quot;jsoup.useRe2j\u0026quot;, \u0026quot;false\u0026quot;)\u003c/code\u003e.) You can confirm that the re2j engine has been enabled correctly by calling \u003ccode\u003eorg.jsoup.helper.Regex.usingRe2j()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2407\"\u003e#2407\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded an instance method \u003ccode\u003eParser#unescape(String, boolean)\u003c/code\u003e that unescapes HTML entities using the parser's configuration (e.g. to support error tracking), complementing the existing static utility \u003ccode\u003eParser.unescapeEntities(String, boolean)\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2396\"\u003e#2396\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded a configurable maximum parser depth (to limit the number of open elements on stack) to both HTML and XML parsers. The HTML parser now defaults to a depth of 512 to match browser behavior, and protect against unbounded stack growth, while the XML parser keeps unlimited depth by default, but can opt into a limit via \u003ccode\u003eorg.jsoup.parser.Parser#setMaxDepth\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2421\"\u003e#2421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild: added CI coverage for JDK 25 \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2403\"\u003e#2403\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBuild: added a CI fuzzer for contextual fragment parsing (in addition to existing full body HTML and XML fuzzers). [oss-fuzz \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/14041\"\u003e#14041\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/google/oss-fuzz/pull/14041\"\u003egoogle/oss-fuzz#14041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSet a removal schedule of jsoup 1.24.1 for previously deprecated APIs.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePreviously cached child \u003ccode\u003eElements\u003c/code\u003e of an \u003ccode\u003eElement\u003c/code\u003e were not correctly invalidated in \u003ccode\u003eNode#replaceWith(Node)\u003c/code\u003e, which could lead to incorrect results when subsequently calling \u003ccode\u003eElement#children()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2391\"\u003e#2391\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAttribute selector values are now compared literally without trimming. Previously, jsoup trimmed whitespace from selector values and from element attribute values, which could cause mismatches with browser behavior (e.g. \u003ccode\u003e[attr=\u0026quot; foo \u0026quot;]\u003c/code\u003e). Now matches align with the CSS specification and browser engines. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2380\"\u003e#2380\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen using the JDK HttpClient, any system default proxy (\u003ccode\u003eProxySelector.getDefault()\u003c/code\u003e) was ignored. Now, the system proxy is used if a per-request proxy is not set. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2388\"\u003e#2388\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2390\"\u003e#2390\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eA \u003ccode\u003eValidationException\u003c/code\u003e could be thrown in the adoption agency algorithm with particularly broken input. Now logged as a parse error. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2393\"\u003e#2393\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNull characters in the HTML body were not consistently removed; and in foreign content were not correctly replaced. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2395\"\u003e#2395\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAn \u003ccode\u003eIndexOutOfBoundsException\u003c/code\u003e could be thrown when parsing a body fragment with crafted input. Now logged as a parse error. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2397\"\u003e#2397\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2406\"\u003e#2406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen using StructuralEvaluators (e.g., a \u003ccode\u003eparent child\u003c/code\u003e selector) across many retained threads, their memoized results could also be retained, increasing memory use. These results are now cleared immediately after use, reducing overall memory consumption. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2411\"\u003e#2411\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCloning a \u003ccode\u003eParser\u003c/code\u003e now preserves any custom \u003ccode\u003eTagSet\u003c/code\u003e applied to the parser. \u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2422\"\u003e#2422\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/jhy/jsoup/pull/2423\"\u003e#2423\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/jhy/jsoup/commit/ac28afe6e5bf96d39fd17c3e0a797a7585e1958c\"\u003e\u003ccode\u003eac28afe\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release jsoup-1.22.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/52f2cd3ea2004b9be0e0a09021bac7ce2daf8ae4\"\u003e\u003ccode\u003e52f2cd3\u003c/code\u003e\u003c/a\u003e Improve entity example in changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/cf6ffe08616f8633ee6113b91f9d6a07acef38c6\"\u003e\u003ccode\u003ecf6ffe0\u003c/code\u003e\u003c/a\u003e Add Tag#TextBoundary option; bring TagSet to spec (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/2be739c1c659a1592c402a5441f8be6f7881280c\"\u003e\u003ccode\u003e2be739c\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2492\"\u003e#2492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/45de7cbc215eb3f1189d23eaf57acf6f7b1a5edf\"\u003e\u003ccode\u003e45de7cb\u003c/code\u003e\u003c/a\u003e Migrate integration test server from Jetty to Netty (\u003ca href=\"https://redirect.github.com/jhy/jsoup/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/1df14edbfc327a1ef309142ef5e8ed68324de320\"\u003e\u003ccode\u003e1df14ed\u003c/code\u003e\u003c/a\u003e Preserve XML doctype internal subset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/06fa52d15a22003b67dfdb3f8220cc025d493a43\"\u003e\u003ccode\u003e06fa52d\u003c/code\u003e\u003c/a\u003e Adding Contribution Guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/d4a8941820c037327538c30a8723ec715b67b6f6\"\u003e\u003ccode\u003ed4a8941\u003c/code\u003e\u003c/a\u003e Simplify the test; doesn't need the buffer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/823709f519995492d9a092fe315af389616e58f8\"\u003e\u003ccode\u003e823709f\u003c/code\u003e\u003c/a\u003e Don't reuse a fully read sniffed doc for StreamParser\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jhy/jsoup/commit/e1b0df5fec53710214cd700de38d82e1ca92bd79\"\u003e\u003ccode\u003ee1b0df5\u003c/code\u003e\u003c/a\u003e NodeFilter javadoc tweak\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jhy/jsoup/compare/jsoup-1.21.2...jsoup-1.22.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springdoc:springdoc-openapi-starter-webmvc-ui` from 2.8.14 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/releases\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003espringdoc-openapi v3.0.3 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\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/seregamorph\"\u003e\u003ccode\u003e@​seregamorph\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/pull/3260\"\u003espringdoc/springdoc-openapi#3260\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/springdoc/springdoc-openapi/compare/v3.0.2...v3.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003espringdoc-openapi v3.0.2 released!\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3229\"\u003e#3229\u003c/a\u003e – Add support for Spring Framework API Versioning with Functional Endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3208\"\u003e#3208\u003c/a\u003e – Add \u003ccode\u003espringdoc.swagger-ui.document-title\u003c/code\u003e property\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.3\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.43\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Scalar to version \u003cstrong\u003e0.5.55\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3232\"\u003e#3232\u003c/a\u003e – Gracefully handle springdoc endpoint paths during API version resolution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3230\"\u003e#3230\u003c/a\u003e – Scalar source URLs resolve to \u003ccode\u003enull/\u0026lt;groupName\u0026gt;\u003c/code\u003e on second request when using \u003ccode\u003eGroupedOpenApi\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3228\"\u003e#3228\u003c/a\u003e – springdoc-openapi-starter 3.x doesn't depend on \u003ccode\u003eorg.springframework.boot:spring-boot-starter\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/springdoc/springdoc-openapi/blob/v3.0.3/CHANGELOG.md\"\u003eorg.springdoc:springdoc-openapi-starter-webmvc-ui's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.0.3] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3246\"\u003e#3246\u003c/a\u003e – Add Springdoc OpenAPI MCP (Model Context Protocol) support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3256\"\u003e#3256\u003c/a\u003e – Auto-set \u003ccode\u003enullable: true\u003c/code\u003e for Kotlin nullable types in schema properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3239\"\u003e#3239\u003c/a\u003e – Add support for the \u003ccode\u003e@Range\u003c/code\u003e constraint validation annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3244\"\u003e#3244\u003c/a\u003e – Handle default values for \u003ccode\u003eLocalDate\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.5\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.47\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.2\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e – \u003ccode\u003e@ConditionalOnClass(HateoasProperties.class)\u003c/code\u003e in \u003ccode\u003eSpringDocHateoasConfiguration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eForwards all MCP non-transport headers to downstream methods\u003c/li\u003e\n\u003cli\u003eDynamically resolve the base path from \u003ccode\u003ewindow.location.pathname\u003c/code\u003e for MCP UI\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3258\"\u003e#3258\u003c/a\u003e – Setting API Version Required when using WebFlux breaks the Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3259\"\u003e#3259\u003c/a\u003e – Annotated Generic properties getting applied to sibling properties\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3255\"\u003e#3255\u003c/a\u003e – \u003ccode\u003eDirection\u003c/code\u003e enum: fixed visibility scope of group order so that \u003ccode\u003esetGroupsOrder\u003c/code\u003e method can be used\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3247\"\u003e#3247\u003c/a\u003e – Preserve YAML group URLs in Swagger UI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3245\"\u003e#3245\u003c/a\u003e – Upgrade swagger-core from version 2.2.43 to 2.2.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3235\"\u003e#3235\u003c/a\u003e – \u003ccode\u003ePropertyResolverUtils\u003c/code\u003e retains a \u003ccode\u003eJsonNode\u003c/code\u003e when reading an \u003ccode\u003eExtensionProperty\u003c/code\u003e annotation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3226\"\u003e#3226\u003c/a\u003e – Propagate \u003ccode\u003eJsonView\u003c/code\u003e context when resolving \u003ccode\u003ePage\u0026lt;T\u0026gt;\u003c/code\u003e schema\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.0.2] - 2026-02-27\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3229\"\u003e#3229\u003c/a\u003e – Add support for Spring Framework API Versioning with Functional Endpoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3208\"\u003e#3208\u003c/a\u003e – Add \u003ccode\u003espringdoc.swagger-ui.document-title\u003c/code\u003e property\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade Spring Boot to version \u003cstrong\u003e4.0.3\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-core to version \u003cstrong\u003e2.2.43\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade swagger-ui to version \u003cstrong\u003e5.32.0\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade Scalar to version \u003cstrong\u003e0.5.55\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3232\"\u003e#3232\u003c/a\u003e – Gracefully handle springdoc endpoint paths during API version resolution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3230\"\u003e#3230\u003c/a\u003e – Scalar source URLs resolve to \u003ccode\u003enull/\u0026lt;groupName\u0026gt;\u003c/code\u003e on second request when using \u003ccode\u003eGroupedOpenApi\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3228\"\u003e#3228\u003c/a\u003e – springdoc-openapi-starter 3.x doesn't depend on \u003ccode\u003eorg.springframework.boot:spring-boot-starter\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3220\"\u003e#3220\u003c/a\u003e – Reachability metadata not compatible with GraalVM 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3195\"\u003e#3195\u003c/a\u003e – Application won't compile when OpenApi and spring-boot-data-rest is present\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3193\"\u003e#3193\u003c/a\u003e – \u003ccode\u003eOpenApi\u003c/code\u003e field in \u003ccode\u003eSpringDocConfigProperties\u003c/code\u003e does not comply with camel case naming conventions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3c30283fb33ced3b8368c7a890ee05d23119322a\"\u003e\u003ccode\u003e3c30283\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4184c05db39e96e8d1ce1287d5f58f242a4c8165\"\u003e\u003ccode\u003e4184c05\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/89745c20c3695b9b934cbf77f96ef1cd1df9fac7\"\u003e\u003ccode\u003e89745c2\u003c/code\u003e\u003c/a\u003e CHANGELOG.md update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/4d1a730134720740ed3b9a2831d14e97dbe28780\"\u003e\u003ccode\u003e4d1a730\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/springdoc/springdoc-openapi/issues/3260\"\u003e#3260\u003c/a\u003e from seregamorph/SpringDocHateoasConfiguration-class...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/54e765036d9d49935a97e3ccebd875581efcc8ed\"\u003e\u003ccode\u003e54e7650\u003c/code\u003e\u003c/a\u003e ConditionalOnClass (HateoasProperties.class) in SpringDocHateoasConfiguration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/9f354b2a3cb92a8caa1d0518b1916ac4f79fbd71\"\u003e\u003ccode\u003e9f354b2\u003c/code\u003e\u003c/a\u003e Spring-boot upgrade to version 4.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/14df32f99179db89967a6260562775cd6b883128\"\u003e\u003ccode\u003e14df32f\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/3ee9a44547f44fb4982c98b7a5dbc1f6f9aff1a3\"\u003e\u003ccode\u003e3ee9a44\u003c/code\u003e\u003c/a\u003e Forwards all MCP non-transport headers, to downstream methods\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/df99408a7674af5ea3fc40f79d81bfef372e7c0e\"\u003e\u003ccode\u003edf99408\u003c/code\u003e\u003c/a\u003e upgrade swagger-ui to version 5.32.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/springdoc/springdoc-openapi/commit/6ee70f4074e76d3d8554487e4318681d95e444d7\"\u003e\u003ccode\u003e6ee70f4\u003c/code\u003e\u003c/a\u003e upgrade swagger-api to version 2.2.47\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/springdoc/springdoc-openapi/compare/v2.8.14...v3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.tukaani:xz` from 1.11 to 1.12\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tukaani-project/xz-java/blob/master/NEWS.md\"\u003eorg.tukaani:xz's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.12 (2026-03-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix ArrayIndexOutOfBoundsException in the LZMA/LZMA2 encoder on\nx86-64 and ARM64 when running on Java 9 or newer. The affected\ncode isn't used on Java 8. The bug is present in versions 1.10\nand 1.11. If one cannot upgrade, one should set the property\n\u003ccode\u003eorg.tukaani.xz.MatchLengthFinder=Basic\u003c/code\u003e to disable the affected\ncode path.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix ArrayCache usage in LZMAInputStream. If ArrayCache was enabled,\ndecompression was likely to fail quickly when the cache returns a\ncached array. ArrayCache is disabled by default.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe binaries of 1.12 in the Maven Central require Java 8 and\ncontain optimized classes for Java \u0026gt;= 9 as multi-release JAR.\nThey were built with OpenJDK 21.0.10 on GNU/Linux and can be\nreproduced using the following command:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSOURCE_DATE_EPOCH=1772370000 TZ=UTC0 ant maven\n\u003c/code\u003e\u003c/pre\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/tukaani-project/xz-java/commit/107a519fac1e6789101ad9c234afe3dc407be7f5\"\u003e\u003ccode\u003e107a519\u003c/code\u003e\u003c/a\u003e Bump the version number to 1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/3061152e66a8ea2cc6366fd5da21409b8a3d4788\"\u003e\u003ccode\u003e3061152\u003c/code\u003e\u003c/a\u003e Update NEWS.md for 1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/0ecee25c1590dae305135317cf6e768f49093af7\"\u003e\u003ccode\u003e0ecee25\u003c/code\u003e\u003c/a\u003e Refactor EXTRA_SIZE to getExtraSize()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/ac1aeb197dd8589dc6892f13f5ef68801383ec34\"\u003e\u003ccode\u003eac1aeb1\u003c/code\u003e\u003c/a\u003e Fix ArrayIndexOutOfBoundsException in the LZMA/LZMA2 encoder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/12c75fd1d06ef7db89335d3da1ca5bb91ab6ac0b\"\u003e\u003ccode\u003e12c75fd\u003c/code\u003e\u003c/a\u003e Fix ArrayCache usage with LZMAInputStream\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/e52d9ad621afcaa422668484bad91ce7ba0506ef\"\u003e\u003ccode\u003ee52d9ad\u003c/code\u003e\u003c/a\u003e SHA256SUMS: Add 1.11 files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tukaani-project/xz-java/commit/9a755ec5335de00ce365b365b72e4683e591171f\"\u003e\u003ccode\u003e9a755ec\u003c/code\u003e\u003c/a\u003e CI: Add missing SPDX tags\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tukaani-project/xz-java/compare/v1.11...v1.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `com.github.ben-manes.caffeine:caffeine` from 3.2.0 to 3.2.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ben-manes/caffeine/releases\"\u003ecom.github.ben-manes.caffeine:caffeine's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed frequency tracking of weak keys to use the object's identity hash code (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1902\"\u003e#1902\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for underscores in \u003ccode\u003eCaffeineSpec\u003c/code\u003e when using numeric literals (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1890\"\u003e#1890\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the external api to no longer lock when querying for the maximum size or weighted size (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1897\"\u003e#1897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded detection and recovery when a custom \u003ccode\u003eCompletableFuture\u003c/code\u003e is in an inconsistent state (\u003ca href=\"https://redirect.github.com/quarkusio/quarkus/issues/50513\"\u003equarkus#50513\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.2.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed characteristics returned by Spliterators (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1883\"\u003e#1883\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.2.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003ecomputeIfAbsent\u003c/code\u003e for an async cache's synchronous view to retry if incomplete\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eCaffeineSpec\u003c/code\u003e when being reflectively constructed (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1839\"\u003e#1839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the handling of negative durations with variable expiration\u003c/li\u003e\n\u003cli\u003eFixed intermittent null after replacing a weak/soft value (\u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1820\"\u003e#1820\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/ben-manes/caffeine/commit/5227a98b51e02b4d4fbfc2b0e33c362a138f51b1\"\u003e\u003ccode\u003e5227a98\u003c/code\u003e\u003c/a\u003e minor build touchups\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/cc3f37d50776f246bfb3ddbe907d2c1a675ce901\"\u003e\u003ccode\u003ecc3f37d\u003c/code\u003e\u003c/a\u003e reorganize into separate gradle test suites\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/2299add522332c06b7bbebb0b5ef322ea23f5254\"\u003e\u003ccode\u003e2299add\u003c/code\u003e\u003c/a\u003e Allow users to read the maximum size without locking (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1897\"\u003e#1897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/6250b384f161d1841e2bfd032f7bf375626d90ad\"\u003e\u003ccode\u003e6250b38\u003c/code\u003e\u003c/a\u003e clarify policy javadoc and add corresponding test cases (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1927\"\u003e#1927\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/c975fc07460d2fd4008c4d4d14044f65bb1323f2\"\u003e\u003ccode\u003ec975fc0\u003c/code\u003e\u003c/a\u003e upgrade error-prone static analyzer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/d8e0a92553ab230122bcd223363c1d8ca060bce7\"\u003e\u003ccode\u003ed8e0a92\u003c/code\u003e\u003c/a\u003e allow the project.version to be overridden by external builders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/0e46d2225fece2ac0ce68d9bdd2a056af6015136\"\u003e\u003ccode\u003e0e46d22\u003c/code\u003e\u003c/a\u003e detect if the user's future is inconsistent with the results\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/1971428f8b2fbd37fb57ed6a092de6d7c965f55a\"\u003e\u003ccode\u003e1971428\u003c/code\u003e\u003c/a\u003e use the assemble task for a full build without running the test suites\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/782ac79e079ae404ebb948afcc6f28b60aafd8dd\"\u003e\u003ccode\u003e782ac79\u003c/code\u003e\u003c/a\u003e use the key reference with the frequency sketch (fixes \u003ca href=\"https://redirect.github.com/ben-manes/caffeine/issues/1902\"\u003e#1902\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ben-manes/caffeine/commit/e0dd94b922b862b6afbaa59464f1d3cfb8a24596\"\u003e\u003ccode\u003ee0dd94b\u003c/code\u003e\u003c/a\u003e minor build clean up\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ben-manes/caffeine/compare/v3.2.0...v3.2.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.assertj:assertj-core` from 3.27.6 to 3.27.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assertj/assertj/releases\"\u003eorg.assertj:assertj-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.27.7\u003c/h2\u003e\n\u003ch2\u003e:lock: Security\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix XXE vulnerability in \u003ccode\u003eisXmlEqualTo\u003c/code\u003e assertion (CVE-2026-24400)\n\u003cul\u003e\n\u003cli\u003eSee GHSA-rqfh-9r24-8c9r for details; many thanks to \u003ca href=\"https://github.com/wxt201\"\u003e\u003ccode\u003e@​wxt201\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/Song-Li\"\u003e\u003ccode\u003e@​Song-Li\u003c/code\u003e\u003c/a\u003e for responsibly reporting it!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:no_entry_sign: Deprecated\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003eXmlStringPrettyFormatter\u003c/code\u003e with no replacement\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:bug: Bug Fixes\u003c/h2\u003e\n\u003ch3\u003eGuava\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eNavigation to \u003ccode\u003eassertj-core\u003c/code\u003e or \u003ccode\u003eguava\u003c/code\u003e types from \u003ccode\u003eassertj-guava\u003c/code\u003e Javadoc site has unnecessary header \u003ca href=\"https://redirect.github.com/assertj/assertj/issues/3478\"\u003e#3478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:hammer: Dependency Upgrades\u003c/h2\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Byte Buddy 1.18.3\u003c/li\u003e\n\u003cli\u003eUpgrade to JUnit BOM 5.14.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGuava\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to Guava 33.5.0-jre\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/e84071667f5f8f13084af9dfa54cee5fd9db18db\"\u003e\u003ccode\u003ee840716\u003c/code\u003e\u003c/a\u003e [maven-release-plugin] prepare release assertj-build-3.27.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/85ca7eb6609bb179c043b85ae7d290523b1ba79a\"\u003e\u003ccode\u003e85ca7eb\u003c/code\u003e\u003c/a\u003e Deprecate \u003ccode\u003eXmlStringPrettyFormatter\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/77081dc5eb107141df80f95bd0149b468e451341\"\u003e\u003ccode\u003e77081dc\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/b68fc24a9de28f28a486fc5b887c1b8a003a5823\"\u003e\u003ccode\u003eb68fc24\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4.31.9 to 4.31.10 in the github-actions group ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/0cf5bb6c50f6ead3deaa2a2ff50ef1e7d933c8a3\"\u003e\u003ccode\u003e0cf5bb6\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ekotlin.version\u003c/code\u003e from 2.1.0 to 2.2.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/d393ef1f5e48c89d47d7cf6d1eae359ceda0a126\"\u003e\u003ccode\u003ed393ef1\u003c/code\u003e\u003c/a\u003e Abort tests when symbolic links cannot be created (\u003ca href=\"https://redirect.github.com/assertj/assertj/issues/3788\"\u003e#3788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/22124331e9922af5a43ab50f7a9a25b65be53be1\"\u003e\u003ccode\u003e2212433\u003c/code\u003e\u003c/a\u003e Add IntelliJ custom inspection for test class names\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/5717d025cfe0f4c66de20f3253c0b0ecba259aa1\"\u003e\u003ccode\u003e5717d02\u003c/code\u003e\u003c/a\u003e Update JetBrains icon\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/a8ec20bd42ed01f9cc6f654046c7dd424b0af07c\"\u003e\u003ccode\u003ea8ec20b\u003c/code\u003e\u003c/a\u003e Add icon for JetBrains products\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assertj/assertj/commit/c05fb3d052b415fb2d6051df939f3b7903a76afe\"\u003e\u003ccode\u003ec05fb3d\u003c/code\u003e\u003c/a\u003e Bump Maven to 3.9.12 and Wrapper to 3.3.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/assertj/assertj/compare/assertj-build-3.27.6...assertj-build-3.27.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `org.springframework.boot` from 3.5.8 to 4.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spring-projects/spring-boot/releases\"\u003eorg.springframework.boot's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.6\u003c/h2\u003e\n\u003ch2\u003e:lady_beetle: Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50188\"\u003e#50188\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eElasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50187\"\u003e#50187\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationPidFileWriter does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50185\"\u003e#50185\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRandomValuePropertySource is not suitable for secrets \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50183\"\u003e#50183\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCassandra auto-configuration misconfigures CqlSessionBuilder \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50180\"\u003e#50180\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApplicationTemp does not handle symlinks correctly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50178\"\u003e#50178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemote DevTools performs comparison incorrectly \u003ca href=\"https://redirect.github.com/spring-projects/spring-boot/issues/50176\"\u003e#50176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003espring.rabbitmq.ssl.verify-hostname is applied inconsistently ...\n\n_Description has been truncated_","html_url":"https://github.com/PetraRu6/booklore-solid-refactor/pull/18","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/PetraRu6%2Fbooklore-solid-refactor/issues/18","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/18/packages"}}]}